List - Elementen beheren: toevoegen en verwijderen

Nu je weet wat een List is, leer je hoe je elementen kan toevoegen, verwijderen en ophalen.


Elementen toevoegen: Add()

De methode Add() voegt een element toe achteraan de lijst.

List<string> boodschappen = new List<string>();

boodschappen.Add("Brood");
boodschappen.Add("Melk");
boodschappen.Add("Eieren");

De lijst bevat nu (in volgorde): "Brood", "Melk", "Eieren".


Elementen toevoegen op een bepaalde plaats: Insert()

Met Insert() voeg je een element in op een bepaalde positie (index). Net zoals bij arrays begint de index bij 0.

// Methode: Insert(index, element)
boodschappen.Insert(0, "Boter");

De lijst bevat nu: "Boter", "Brood", "Melk", "Eieren".

Index = 0 betekent vooraan!

De bestaande elementen schuiven één positie op. Insert(0, "Boter") zet “Boter” helemaal vooraan.

Een ander voorbeeld — voeg “Kaas” in op positie 2:

List<string> boodschappen = new List<string>() { "Brood", "Melk", "Eieren" };
boodschappen.Insert(2, "Kaas");
// Resultaat: "Brood", "Melk", "Kaas", "Eieren"

Een element opvragen: lijst[index]

Je kan een element opvragen via zijn index, net als bij een array:

List<string> boodschappen = new List<string>() { "Brood", "Melk", "Eieren" };

string eersteItem = boodschappen[0];  // "Brood"
string tweedeItem = boodschappen[1];  // "Melk"

Console.WriteLine(eersteItem);  // Brood

Aantal elementen: Count

De eigenschap Count geeft het aantal elementen in de lijst terug.

List<string> boodschappen = new List<string>() { "Brood", "Melk", "Eieren" };

int aantal = boodschappen.Count;
Console.WriteLine(aantal);  // 3

Count vs Length

Bij een array gebruik je .Length voor het aantal elementen. Bij een List gebruik je .Count.


Element verwijderen op basis van waarde: Remove()

Remove() verwijdert het eerste element in de lijst dat overeenkomt met de opgegeven waarde.

List<string> boodschappen = new List<string>() { "Brood", "Melk", "Eieren" };

boodschappen.Remove("Melk");
// Resultaat: "Brood", "Eieren"

Als het element niet bestaat, gebeurt er niets (geen fout).


Element verwijderen op basis van index: RemoveAt()

RemoveAt() verwijdert het element op een bepaalde positie.

List<string> boodschappen = new List<string>() { "Brood", "Melk", "Eieren" };

boodschappen.RemoveAt(1);
// Verwijdert element op index 1 = "Melk"
// Resultaat: "Brood", "Eieren"

Overzicht methodes

Methode Wat doet het? Voorbeeld
Add(element) Voegt element toe achteraan lijst.Add("Jan")
Insert(index, element) Voegt element in op positie lijst.Insert(0, "Jan")
lijst[index] Geeft element op positie terug string s = lijst[2]
Count Geeft het aantal elementen int n = lijst.Count
Remove(element) Verwijdert eerste overeenkomst lijst.Remove("Jan")
RemoveAt(index) Verwijdert element op positie lijst.RemoveAt(2)

Voorbeeld: alles samen

using System;
using System.Collections.Generic;

List<string> favorieteFilms = new List<string>();

favorieteFilms.Add("The Lion King");
favorieteFilms.Add("Interstellar");
favorieteFilms.Add("Parasite");
favorieteFilms.Insert(0, "Spirited Away");  // vooraan

Console.WriteLine(favorieteFilms[0]);       // Spirited Away
Console.WriteLine(favorieteFilms.Count);    // 4

favorieteFilms.Remove("Interstellar");

Console.WriteLine(favorieteFilms.Count);    // 3

Uitvoer:

Spirited Away
4
3