Kotlin Academy · Les

Collecties itereren en transformeren met de standaardbibliotheek

Gebruik map, filter, any, all en count in realistische collectievoorbeelden.

Les 4 van 413 stappen

Collecties itereren en transformeren met de standaardbibliotheek is een gratis Kotlin Academy-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Kotlin Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Kotlin Academy bevat in totaal 4 lessen.

Verzamelingen als pijplijnen

De standaardbibliotheek van Kotlin transformeert verzamelingen via aaneengeschakelde bewerkingen. Elke functie retourneert een nieuwe verzameling — het origineel blijft ongewijzigd.

map: één-op-ééntransformatie

map past een functie toe op elk element en retourneert een lijst met resultaten.
val prices = listOf(10, 20, 30)
val withTax = prices.map { it * 1.1 }
println(withTax)  // [11.0, 22.0, 33.0]

flatMap: één-op-veel

flatMap brengt elk element in kaart naar een lijst en vlakt daarna alle lijsten samen tot één lijst.
val sentences = listOf("hello world", "foo bar")
val words = sentences.flatMap { it.split(" ") }
println(words)  // [hello, world, foo, bar]

filter en filterNot

filter behoudt elementen die aan het predicaat voldoen; filterNot behoudt de elementen die dat niet doen.
val nums = (1..10).toList()
val evens = nums.filter { it % 2 == 0 }
val odds = nums.filterNot { it % 2 == 0 }
println(evens)  // [2, 4, 6, 8, 10]

groupBy: groeperen op sleutel

groupBy retourneert een Map> waarin elementen worden gegroepeerd volgens de sleutelfunctie.
val words = listOf("one", "two", "three", "four", "five")
val byLength = words.groupBy { it.length }
println(byLength)
// {3=[one, two], 5=[three], 4=[four, five]}

associate en associateBy

associate maakt een Map met een lambda die een sleutelwaarde-paar oplevert. associateBy gebruikt een sleutelextractor.
val items = listOf("apple", "banana", "cherry")
val byFirst = items.associateBy { it.first() }
println(byFirst)  // {a=apple, b=banana, c=cherry}

partition: in tweeën splitsen

partition splitst een verzameling op in twee lijsten: elementen die overeenkomen en elementen die niet overeenkomen.
val (evens, odds) = (1..8).partition { it % 2 == 0 }
println(evens)  // [2, 4, 6, 8]
println(odds)   // [1, 3, 5, 7]

distinct en distinctBy

distinct verwijdert dubbele elementen. distinctBy verwijdert duplicaten op basis van een sleutel.
val nums = listOf(1, 2, 2, 3, 1, 4)
println(nums.distinct())  // [1, 2, 3, 4]
val words = listOf("Hi", "hello", "HI")
println(words.distinctBy { it.lowercase() })

take, drop en chunked

take neemt de eerste N elementen; drop slaat de eerste N over; chunked splitst de verzameling op in sublijsten met grootte N.
val list = (1..10).toList()
println(list.take(3))    // [1, 2, 3]
println(list.drop(7))    // [8, 9, 10]
println(list.chunked(3)) // [[1,2,3],[4,5,6],[7,8,9],[10]]

zip: twee verzamelingen combineren

zip combineert twee lijsten tot een lijst met paren. De bewerking stopt bij de kortste lijst.
val names = listOf("Alice", "Bob", "Charlie")
val scores = listOf(90, 85, 92)
val combined = names.zip(scores)
println(combined)  // [(Alice, 90), (Bob, 85), (Charlie, 92)]

sumOf, minOf, maxOf, averageOf

Verkorte aggregatiebewerkingen met transformatiefuncties.
val items = listOf("apple", "banana", "cherry")
println(items.sumOf { it.length })    // 18
println(items.maxOf { it.length })    // 6
println(items.minOf { it.length })    // 5

Korte controle

Welke functie groepeert een verzameling in een Map> op basis van een sleutelselector?

Samenvatting

map, flatMap, filter, groupBy, associate, partition, distinct en zip — de belangrijkste gereedschappen voor het transformeren van verzamelingen. Schakel ze aaneen tot duidelijke pijplijnen. Hierna: klassen en constructors!
Gratis beginnen

Leer Kotlin 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
51
Lessen
203

Veelgestelde vragen

Is de les “Collecties itereren en transformeren met de standaardbibliotheek” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Kotlin Academy, waaronder “Collecties itereren en transformeren met de standaardbibliotheek”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Kotlin Academy bevat in totaal 4 lessen.

Wat leer ik in “Collecties itereren en transformeren met de standaardbibliotheek”?

Gebruik map, filter, any, all en count in realistische collectievoorbeelden. Je oefent met Kotlin 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 Kotlin Academy te beginnen?

Ervaring vooraf is niet nodig. Kotlin 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 4 van 4.

Hoe lang duurt de les “Collecties itereren en transformeren met de standaardbibliotheek”?

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 Kotlin Academy?

Ja. Elke les over Kotlin 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

  1. listOf, setOf, mapOf: read-only-collecties
  2. mutableListOf, mutableMapOf: mutabele builders
  3. Elementen benaderen: get, first, last, getOrNull
  4. Collecties itereren en transformeren met de standaardbibliotheek
← Terug naar Kotlin Academy