如何使用Linq查找2个类型字符串通用列表之间的公共项。
例如,假设我有以下代码,我想获得一个List<串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");
答案 0 :(得分:13)
答案 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。