日期:2014-05-18  浏览次数:20966 次

泛型集合 合并
List<int> a = new List<int>{0,3,7,2,3,7,0,1,7,0,2,4,3,4,7,1,2,8,4,8} 注: a 没有数字 9、5、6


List<int> num = new List<int>{0,1,2,3,4,5,6,7,8,9}


使用 List<int> Result = a.Union(num).ToList();

得到的结果是,虽然是在 a 添加了原先没有的 9、5、6

但是剔除了a 重复的元素

如何在 保留 a 原有元素的基础上,添加新的元素 9,5,6 ?


------解决方案--------------------
List<int> Result = a.Concat(num.Except(a)).ToList();
------解决方案--------------------
//连接a和num,不踢出重复元素,结果result共有30个
List<int> result = a.Concat(num).ToList();
//这种是在在保持a不变的情况下添加a在num没有的元素,即9,5,6;结果result1共有23个元素
List<int> result1 = a.Concat(num.Where(c => !a.Contains(c)).ToList()).ToList();