泛型聚合 合并(Union / Concat / Except / Contains)(赞)

前端之家收集整理的这篇文章主要介绍了泛型聚合 合并(Union / Concat / Except / Contains)(赞)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
原文出处: http://www.myexception.cn/c-sharp/578147.html

泛型集合 合并
List<int> a = new List<int>{0,3,7,2,1,4,8,8} 注: a 没有数字 9、5、6
List<int> num = new List<int>{0,5,6,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,6;结果result1共有23个元素
List<int> result1 = a.Concat(num.Where(c => !a.Contains(c)).ToList()).ToList();

猜你在找的设计模式相关文章