日期:2014-05-20  浏览次数:20873 次

LINQ实现连接两个集合
集合A={'A','B','C','D','E','F','G'}
集合B={'C','A','D'}
LINQ中怎么连接两个集合,得到集合C={'C','A','D','D','E','F','G'}
即先取B集合中的元素,然后取A集合中的元素。(B集合元素数一定少于A集合元素数)
------解决方案--------------------

A={'A','B','C','D','E','F','G'}
B={'C','A','D'}
C=B.Concat(A).Distinct();

------解决方案--------------------
引用:
引用:

C# code

A={'A','B','C','D','E','F','G'}
B={'C','A','D'}
C=B.Concat(A).Distinct();

是我没描述清楚,先取B集合中的元素,然后取A集合中跳过B集合元素数剩下的元素。

Concat和Except连用,先用Except再用concat
B.Concat(A.Except(B))