温馨提示×

C#中Intersect与Contains有什么区别

c#
小亿
91
2024-04-02 14:45:28
栏目: 编程语言

在C#中,Intersect和Contains是两个不同的方法,它们的功能和使用方式也有所不同。

1、Intersect方法:

Intersect方法用于获取两个集合的交集,返回两个集合中共同包含的元素。Intersect方法接受一个IEnumerable类型的参数,并返回一个新的IEnumerable集合,包含两个原始集合中共同存在的元素。如果两个集合没有共同的元素,则返回一个空集合。

示例:

```csharp

List list1 = new List { 1, 2, 3, 4, 5 };

List list2 = new List { 3, 4, 5, 6, 7 };

var intersect = list1.Intersect(list2);

foreach (var num in intersect)

{

Console.WriteLine(num);

}

```

输出结果为:

```

3

4

5

```

2、Contains方法:

Contains方法用于判断集合中是否包含指定的元素,返回一个布尔值表示是否包含。Contains方法接受一个参数,表示要查找的元素,如果集合中包含该元素,则返回true;否则返回false。

示例:

```csharp

List list = new List { 1, 2, 3, 4, 5 };

int num = 3;

if (list.Contains(num))

{

Console.WriteLine("集合中包含元素" + num);

}

else

{

Console.WriteLine("集合中不包含元素" + num);

}

```

输出结果为:

```

集合中包含元素3

```

总结:

Intersect方法用于获取两个集合的交集,返回共同包含的元素;Contains方法用于判断集合中是否包含指定的元素,返回一个布尔值。因此,Intersect和Contains的主要区别在于功能和用法不同。

0