开放的编程资料库

当前位置:我爱分享网 > C#教程 > 正文

C# 列表删除

在这篇文章中,我们展示了如何在C#中删除列表元素。

C#列表是相同类型元素的集合。可以通过索引访问元素。

我们可以使用RemoveRemoveAllRemoveAtRemoveRangeClear方法。

C#列表删除

Remove方法从列表中删除第一次出现的特定对象。

public bool Remove (T item)

如果删除成功则返回true;否则为假。

var words = new List<string> { "sky", "cup", "new", "war", "wrong",
    "crypto", "forest", "water", "cup" };

string word = "sky";

removeWord(word);
removeWord(word);

Console.WriteLine(string.Join(' ', words));

void removeWord(string word) 
{
    if (words.Remove(word))
    {
        Console.WriteLine($"{word} removed");
    } else 
    {
        Console.WriteLine($"failed to remove {word}");
    }
}

在程序中,我们定义了一个字符串列表。我们使用Remove方法来删​​除一个单词。

$ dotnet run
sky removed
failed to remove sky
cup new war wrong crypto forest water cup

C#列表移除位置

RemoveAt删除列表指定索引处的元素。

public void RemoveAt (int index)

这是语法。

var words = new List<string> { "sky", "cup", "new", "war", "wrong",
    "crypto", "forest", "water", "cup" };

Console.WriteLine(string.Join(' ', words));

words.RemoveAt(0);
words.RemoveAt(5);

Console.WriteLine(string.Join(' ', words));

在程序中,我们使用RemoveAt删除了两个元素。

words.RemoveAt(0);
words.RemoveAt(5);

第一个和第六个元素被移除。

$ dotnet run
sky cup new war wrong crypto forest water cup
cup new war wrong crypto water cup

C#列表删除所有

RemoveAll方法删除所有符合指定谓词定义的条件的元素。

public int RemoveAll (Predicate<T> match);

它返回从列表中删除的元素数。

var words = new List<string> { "sky", "cup", "new", "war", "wrong",
    "crypto", "forest", "water", "cup" };

Console.WriteLine(string.Join(' ', words));

int n = words.RemoveAll(e => e.StartsWith('w'));

Console.WriteLine($"{n} elements removed");

Console.WriteLine(string.Join(' ', words));

我们删除所有以“w”开头的单词。然后我们打印删除的单词数。

int n = words.RemoveAll(e => e.StartsWith('w'));

我们将lambda表达式形式的谓词传递给RemoveAll方法。

$ dotnet run
sky cup new war wrong crypto forest water cup
3 elements removed
sky cup new crypto forest cup

C#列表删除范围

RemoveRange方法从列表中删除一系列元素。

public void RemoveRange(int index, int count)

参数为要移除的元素范围的起始索引和要移除的元素个数。

var words = new List<string> { "sky", "cup", "new", "war", "wrong",
    "crypto", "forest", "water", "cup" };

Console.WriteLine(string.Join(' ', words));

words.RemoveRange(0, 4);

Console.WriteLine(string.Join(' ', words));

在示例中,我们从头开始删除四个元素。

$ dotnet run
sky cup new war wrong crypto forest water cup
wrong crypto forest water cup

C#列表清除

Clear方法从列表中删除所有元素。

var words = new List<string> { "sky", "cup", "new", "war", "wrong",
    "crypto", "forest", "water", "cup" };

Console.WriteLine(words.Count);

words.Clear();

Console.WriteLine(words.Count);

程序用Clear删除所有单词。我们使用Count检查元素的数量。

$ dotnet run
9
0

在本文中,我们展示了如何在C#中删除列表元素。

列出所有C#教程。

未经允许不得转载:我爱分享网 » C# 列表删除

感觉很棒!可以赞赏支持我哟~

赞(0) 打赏