📜  从列表中删除项目 c# 条件 - C# (1)

📅  最后修改于: 2023-12-03 14:49:21.968000             🧑  作者: Mango

从列表中删除项目 c# 条件 - C#


在 C# 编程中,我们经常需要操作各种各样的列表(List),包括从列表中删除特定的项目。本文介绍了如何从列表中按照特定的条件删除项目。

利用 RemoveAll 方法删除

C# 中的 List 类提供了 RemoveAll 方法来删除满足特定条件的元素。此方法需要一个委托作为参数,该委托返回一个布尔值,用于指示该元素是否应被删除。以下是一个示例列表:

List<string> fruits = new List<string> { "apple", "banana", "orange", "pear", "mango" };

在该示例中,我们的任务是删除所有包含字母“a”的水果。我们可以使用以下代码:

fruits.RemoveAll(fruit => fruit.Contains("a"));

此代码将删除 fruits 列表中的所有包含字母 “a” 的元素。调用 RemoveAll 方法后,fruits 列表中将只剩下 “pear” 这个元素。

利用 Remove 和 For 循环删除

如果您不想使用 RemoveAll 方法,那么您也可以使用 Remove 方法在循环中逐个删除元素。以下是一个示例代码:

List<string> fruits = new List<string> { "apple", "banana", "orange", "pear", "mango" };
for (int i = fruits.Count - 1; i >= 0; i--)
{
    if (fruits[i].Contains("a"))
    {
        fruits.RemoveAt(i);
    }
}

在该示例中,我们逆序遍历 fruits 列表,并检查每个元素是否包含字母 “a”。如果包含,则使用 Remove 方法删除该元素。 请注意,必须使用 Count 属性来获取列表的实时长度。

总结

在 C# 编程中,从列表中删除元素是一个非常常见的操作。本文介绍了两种常用的方法:使用 RemoveAll 方法和使用 Remove 方法在循环中逐个删除元素。希望本文能帮助您更好地处理 C# 中的列表。