Door collecties itereren
Lijsten, arrays en dictionaries.
Door collecties itereren is een gratis C# Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject C# Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus C# Academy bevat in totaal 4 lessen.
Verzamelingen die je kunt doorlopen
Veel C#-typen kunnen met foreach worden doorlopen: arrays, List<T>, woordenboeken en meer.
Ze ondersteunen allemaal iteratie omdat ze een gemeenschappelijke interface implementeren. Je hoeft de details niet te kennen om ze te gebruiken.
Een array doorlopen
Arrays hebben een vaste grootte die bij het maken wordt ingesteld.
Je kunt een array met elk elementtype op dezelfde manier doorlopen.
double[] prices = { 9.99, 4.50, 19.00 };
foreach (var p in prices)
{
Console.WriteLine(p);
}Een lijst doorlopen
Een List<T> kan groeien en krimpen. Het is een van de meest gebruikte verzamelingen.
Een lijst doorlopen ziet er precies hetzelfde uit als een array doorlopen.
var fruits = new List<string> { "apple", "pear" };
foreach (var f in fruits)
{
Console.WriteLine(f);
}Tellen tijdens het doorlopen
Soms wil je binnen foreach een handmatige teller gebruiken.
Declareer een variabele vóór de lus en verhoog deze bij elke iteratie.
var items = new List<string> { "a", "b", "c" };
int i = 0;
foreach (var item in items)
{
Console.WriteLine(i + ": " + item);
i++;
}Een woordenboek doorlopen
Een Dictionary<K,V> slaat sleutel-waardeparen op.
Als je het doorloopt, krijg je een KeyValuePair met .Key en .Value.
var ages = new Dictionary<string, int>
{
["Ada"] = 36,
["Linus"] = 54
};
foreach (var pair in ages)
{
Console.WriteLine(pair.Key + "=" + pair.Value);
}Sleutels en waarden van een woordenboek
Als je alleen de sleutels of alleen de waarden nodig hebt, gebruik je de eigenschappen .Keys of .Values.
Elk daarvan is zelf een verzameling die je kunt doorlopen.
foreach (var name in ages.Keys)
{
Console.WriteLine(name);
}Een HashSet doorlopen
Een HashSet<T> slaat unieke waarden op. Dubbele waarden worden genegeerd.
Je kunt er met foreach doorheen lopen, maar de volgorde is niet gegarandeerd.
var tags = new HashSet<string> { "c#", "dotnet", "c#" };
foreach (var t in tags)
{
Console.WriteLine(t);
}Geneste iteratie
Je kunt één foreach-lus in een andere plaatsen om een verzameling van verzamelingen te doorlopen.
Hierdoor doorloop je eerst elke rij en daarna elke waarde in die rij.
int[][] grid = { new[] {1, 2}, new[] {3, 4} };
foreach (var row in grid)
{
foreach (var v in row)
{
Console.WriteLine(v);
}
}Een resultaat opbouwen
Een veelgebruikt patroon is om door één verzameling te lopen en getransformeerde elementen aan een andere toe te voegen.
Hier verdubbelen we elk getal en slaan we het resultaat op in een nieuwe lijst.
var nums = new List<int> { 1, 2, 3 };
var doubled = new List<int>();
foreach (var n in nums)
{
doubled.Add(n * 2);
}
Console.WriteLine(string.Join(",", doubled));Lege verzamelingen
Als een verzameling geen elementen bevat, wordt de body van foreach eenvoudigweg nooit uitgevoerd.
Er treedt geen fout op. Daardoor is foreach veilig, ook als een lijst leeg kan zijn.
var empty = new List<int>();
foreach (var x in empty)
{
Console.WriteLine("never printed");
}
Console.WriteLine("done");IEnumerable: de verbindende factor
Elke verzameling waarover je kunt itereren implementeert IEnumerable<T>.
Dat is het contract waarop foreach vertrouwt. Daardoor werkt dezelfde lussyntaxis voor arrays, lijsten, sets en woordenboeken.
Korte test
Test je begrip van het itereren over verzamelingen.
Samenvatting
Je hebt gezien hoe foreach werkt voor arrays, lijsten, woordenboeken en sets.
Ze delen het contract IEnumerable<T>, dus één lusstijl past bij al deze typen. Lege verzamelingen zijn veilig en woordenboeken leveren sleutel-waardeparen op.
Leer C# met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 93
- Lessen
- 346
Veelgestelde vragen
Is de les “Door collecties itereren” gratis?
Ja — de volledige tekst van “Door collecties itereren” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus C# Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus C# Academy bevat in totaal 4 lessen.
Wat leer ik in “Door collecties itereren”?
Lijsten, arrays en dictionaries. Je oefent met C# Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met C# Academy te beginnen?
Ervaring vooraf is niet nodig. C# Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Door collecties itereren”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over C# Academy?
Ja. Elke les over C# Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- De foreach-lus
- Door collecties itereren
- break en continue
- Veelgemaakte iteratiefouten