List - Inleiding: wat is een List?

Van array naar List

Je kent al arrays: een vaste reeks elementen van hetzelfde type. Het nadeel van een array is dat je bij het aanmaken meteen moet zeggen hoe groot die wordt. Eens aangemaakt, kan de grootte niet meer veranderen.

// Array: grootte is meteen vast (5 elementen)
string[] namen = new string[5];

Wat als je niet op voorhand weet hoeveel elementen je nodig hebt? Stel: je maakt een winkelmandje. De klant kan 1, 3 of 20 producten toevoegen. Je kan onmogelijk op voorhand de grootte bepalen.

De oplossing: een List<T>.


Wat is een List?

Een List<T> is een dynamische verzameling van elementen. Dynamisch betekent dat de lijst automatisch groeit als je elementen toevoegt, en krimpt als je elementen verwijdert. Je hoeft de grootte niet op voorhand te kennen.

De T tussen de punthaken is het type van de elementen in de lijst. Je vult dat zelf in:

Syntax Betekenis
List<string> een lijst van teksten
List<int> een lijst van gehele getallen
List<double> een lijst van kommagetallen
List<bool> een lijst van booleans

Namespace

Om een List te gebruiken moet je bovenaan je code de volgende regel zetten:

using System.Collections.Generic;

Een List declareren

Een lege List<string> declareer je zo:

using System.Collections.Generic;

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

De lijst is nu leeg. Je kan er later elementen aan toevoegen.


Een List declareren én initialiseren

Je kan een lijst ook meteen vullen met elementen bij het aanmaken:

List<string> namen = new List<string>() { "Ali", "Fatima", "Lucas" };

De lijst bevat nu 3 elementen: "Ali", "Fatima" en "Lucas".

Een ander voorbeeld met getallen:

List<int> leeftijden = new List<int>() { 17, 18, 16, 17 };

Vergelijking: array vs List

  Array List
Grootte Vaste grootte Dynamisch (groeit en krimpt)
Declaratie string[] namen = new string[3]; List<string> namen = new List<string>();
Type-safe Ja Ja
Elementen toevoegen Niet mogelijk na aanmaak Altijd mogelijk

Onthoud

Gebruik een array als je op voorhand weet hoeveel elementen je hebt en dat aantal nooit verandert. Gebruik een List als het aantal elementen kan veranderen.


Samenvatting