Linq List <string> union </string>

时间:2009-08-23 09:32:16

标签: c# linq

如何使用Linq查找2个类型字符串通用列表之间的公共项。

例如,假设我有以下代码,我想获得一个List&lt;串GT;其中包含item2和item3:

List<string> List1 = new List<string>();
List<string> List2 = new List<string>();

List1.Add("item1");
List1.Add("item2");
List1.Add("item3");

List2.Add("item2");
List2.Add("item3");
List2.Add("item4");

4 个答案:

答案 0 :(得分:13)

var items = list1.Intersect(list2);

另见:

答案 1 :(得分:5)

我知道LINQ被标记了,但仅仅是为了完整性;如果LINQ不是一个选项;

List<string> result = list1.FindAll(list2.Contains);

答案 2 :(得分:1)

怎么样:

var List3 = list1.Intersect(list2)

答案 3 :(得分:0)

from item in list1
where list2.Contains(item)
select item

适用于valuetypes。