在C#中,Intersect和Contains是两个不同的方法,它们的功能和使用方式也有所不同。
1、Intersect方法:
Intersect方法用于获取两个集合的交集,返回两个集合中共同包含的元素。Intersect方法接受一个IEnumerable类型的参数,并返回一个新的IEnumerable集合,包含两个原始集合中共同存在的元素。如果两个集合没有共同的元素,则返回一个空集合。
示例:
```csharp
List List var intersect = list1.Intersect(list2); foreach (var num in intersect) { Console.WriteLine(num); } ``` 输出结果为: ``` 3 4 5 ``` 2、Contains方法: Contains方法用于判断集合中是否包含指定的元素,返回一个布尔值表示是否包含。Contains方法接受一个参数,表示要查找的元素,如果集合中包含该元素,则返回true;否则返回false。 示例: ```csharp List int num = 3; if (list.Contains(num)) { Console.WriteLine("集合中包含元素" + num); } else { Console.WriteLine("集合中不包含元素" + num); } ``` 输出结果为: ``` 集合中包含元素3 ``` 总结: Intersect方法用于获取两个集合的交集,返回共同包含的元素;Contains方法用于判断集合中是否包含指定的元素,返回一个布尔值。因此,Intersect和Contains的主要区别在于功能和用法不同。