📌  相关文章
📜  c# 从一个列表中删除另一个列表中的项目 - C# (1)

📅  最后修改于: 2023-12-03 15:29:46.587000             🧑  作者: Mango

C# 从一个列表中删除另一个列表中的项目

在C#中,我们可以通过使用 Except() 方法从一个列表中删除另一个列表中的项目。本文将介绍如何使用 Except() 方法来实现此功能。

准备工作

首先,我们需要创建两个列表。以下是创建两个列表的代码。

List<int> list1 = new List<int>() { 1, 2, 3, 4, 5 };
List<int> list2 = new List<int>() { 3, 4, 5 };
使用 Except() 方法删除项目

要从 list1 中删除 list2 中包含的项目,我们可以使用 Except() 方法。以下是使用 Except() 方法的代码。

list1 = list1.Except(list2).ToList();

以上代码首先使用 Except() 方法获取在 list1 中不包含在 list2 中的元素。然后我们使用 ToList() 方法将 IEnumerable<int> 转换为 List<int>。最后,我们将结果存储在 list1 列表中。

现在,如果我们打印 list1,我们会发现只剩下 [1, 2] 这两个元素。

完整代码

以下是完整的代码,包括创建列表和使用 Except() 方法删除元素的部分。

List<int> list1 = new List<int>() { 1, 2, 3, 4, 5 };
List<int> list2 = new List<int>() { 3, 4, 5 };

list1 = list1.Except(list2).ToList();

foreach (int item in list1)
{
    Console.WriteLine(item);
}

输出:

1
2
结论

Except() 方法是一个很方便的方法,可以帮助我们从一个 List 中删除另一个 List 中的元素。但是请记住,它只适用于 List 集合类型。对于其他类型的集合,我们需要自己编写算法来实现此功能。