C#: Elemek törlése listából

Programozással kapcsolatos cikkek / C# (3999 katt)

Ha a C# List listáját használjuk, akkor felmerülhet, hogy hogyan tudunk egy menetben több elemet is kitörölni. Tekintsünk a példa kedvéért egy olyan listát, amelyben int típusú elemek találhatók, és ezek közül szeretnénk kitörölni a páros számokat.

A lista feltöltése:

List<int> list = new List<int>();

for (int i = 1; i <= 11; i++)
list.Add(i);

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


A törlésre több módszer is létezik.

Először nézzük az egyszerű, for ciklussal elvégzett törlést:

for (int i = list.Count - 1; i >= 0; i--)
{
if (list[ i ] % 2 == 0)
{
list.RemoveAt(i);
}
}


De használhatjuk a lista RemoveAll tagfüggvényét is:

lista.RemoveAll(delegate(int x) { return x % 2 == 0; });
lista.RemoveAll(x => x % 2 == 0);

Előző oldal Kapitány