这是找到两个列表之间的并集和交集的最快方法吗?
我的意思是。
我有两个名单说
的列表与LT 1为卤素;
1
2
3
4
李氏&LT 2 - ;
2
3
最后我需要输出为
的列表与LT 3的密度;
未定义
2
3
未定义
希望我清楚我的要求。 如果我在混淆,请告诉我
答案 0 :(得分:4)
LINQ已经有了Union和Intersection。你的例子既不是。
var set = new HashSet(list2)
var list3 = List1.Select(x => set.Contains(x) ? x : null).ToList();
答案 1 :(得分:0)
或者你可以做以下事情,它只是给你一个交集:
HashSet<int> list1 = new HashSet<int>() { 1, 2, 3, 4 };
HashSet<int> list2 = new HashSet<int>() { 2, 3 };
List<int> list3 = list1.Intersect(list2).ToList();
for (int i = 0; i < list3.Count; i++)
{
Console.WriteLine(list3[i]);
}
Console.ReadLine();