为了实现两个List集合的交集,我们可以使用Linq中提供的Intersect
方法。这个方法会返回两个集合中共有的元素,而且仅会返回一次(即不会有重复元素)。下面是具体的实现步骤:
1. 引入命名空间
首先要引入System.Linq这个命名空间,因为Linq是其中的一部分:
using System.Linq;
2. 创建两个List集合
假设我们要比较的两个List分别是list1
和list2
:
List<int> list1 = new List<int> { 1, 2, 3, 4, 5 };
List<int> list2 = new List<int> { 3, 4, 5, 6, 7 };
3. 使用Intersect方法取交集
现在,我们可以使用Intersect方法取出这两个List集合的交集:
var intersectList = list1.Intersect(list2);
这里使用了var关键字,因为我们未知具体的交集元素类型,可以通过IDE提示或使用条件断点技巧找出被自动化替换成了什么。
4. 输出交集结果
最后,我们可以输出交集结果:
foreach (var item in intersectList)
{
Console.WriteLine(item);
}
这里使用了foreach循环,遍历并输出所有交集元素。
例如,这里可以输出如下的结果:
3
4
5
示例2:
下面是另外一个示例,同样是基于以上的步骤实现的:
List<string> list1 = new List<string> { "A", "B", "C", "D", "E" };
List<string> list2 = new List<string> { "C", "D", "E", "F", "G" };
var intersectList = list1.Intersect(list2);
foreach (var item in intersectList)
{
Console.WriteLine(item);
}
这里比较的是两个字符串类型的List集合,其结果可能是这样的:
C
D
E
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linq两个List集合取交集的实现 - Python技术站