0Pricing
Android Academy · Leçon

Collections Kotlin

Travaillez avec List, Set et Map. Utilisez des opérateurs fonctionnels comme filter, map, sortedBy, forEach, find, any et all, puis chaînez les opérations pour transformer les données de manière concise.

Collections Kotlin est une leçon Android Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 6. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Android Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Android Academy comprend 6 leçons au total.

Présentation des collections

La bibliothèque standard de Kotlin fournit trois principaux types de collections :

  • List — séquence ordonnée d’éléments (les doublons sont autorisés)
  • Set — éléments uniques, sans ordre particulier
  • Map — paires clé-valeur, les clés sont uniques

Chaque type possède une version immutable (en lecture seule) et une version mutable (modifiable).

Listes : listOf et mutableListOf

Créez des listes à l’aide de fonctions fabrique :

fun main() {
    // Immutable — cannot add/remove items
    val fruits = listOf("Apple", "Banana", "Cherry")
    println(fruits[0])       // Apple
    println(fruits.size)     // 3

    // Mutable — can modify
    val scores = mutableListOf(10, 20, 30)
    scores.add(40)
    scores.removeAt(0)       // remove index 0
    println(scores)          // [20, 30, 40]
}

Map : paires clé-valeur

Utilisez mapOf et mutableMapOf pour créer des maps. Accédez aux valeurs par leur clé :

fun main() {
    val capitals = mapOf(
        "Turkey" to "Ankara",
        "Germany" to "Berlin",
        "Japan" to "Tokyo"
    )

    println(capitals["Turkey"])      // Ankara
    println(capitals["France"])      // null (not found)
    println(capitals.getOrDefault("France", "Unknown")) // Unknown

    // Iterate
    for ((country, city) in capitals) {
        println("$country -> $city")
    }
}

filter — sélectionner des éléments

filter renvoie une nouvelle liste contenant uniquement les éléments qui correspondent à une condition :

fun main() {
    val numbers = listOf(1, 2, 3, 4, 5, 6, 7, 8)

    val evens = numbers.filter { it % 2 == 0 }
    println(evens)   // [2, 4, 6, 8]

    val names = listOf("Alice", "Bob", "Anna", "Charlie")
    val aNames = names.filter { it.startsWith("A") }
    println(aNames)  // [Alice, Anna]
}

map — transformer des éléments

map transforme chaque élément et renvoie une nouvelle liste :

fun main() {
    val prices = listOf(10.0, 20.0, 30.0)

    // Apply 10% tax
    val withTax = prices.map { it * 1.1 }
    println(withTax)  // [11.0, 22.0, 33.0]

    val names = listOf("alice", "bob", "carol")
    val upper = names.map { it.uppercase() }
    println(upper)    // [ALICE, BOB, CAROL]
}

sortedBy et sortedByDescending

Triez une liste selon une propriété :

data class Student(val name: String, val grade: Int)

fun main() {
    val students = listOf(
        Student("Alice", 88),
        Student("Bob", 95),
        Student("Carol", 72)
    )

    val byGrade = students.sortedByDescending { it.grade }
    for (s in byGrade) println("${s.name}: ${s.grade}")
    // Bob: 95
    // Alice: 88
    // Carol: 72
}

forEach et find

Deux autres fonctions de collection utiles :

  • forEach — parcourt les éléments sans construire de résultat
  • find — renvoie le premier élément correspondant à une condition, ou null

Chaînage des opérations

Chaînez plusieurs opérations pour transformer les données de manière concise :

data class Product(val name: String, val price: Double, val inStock: Boolean)

fun main() {
    val products = listOf(
        Product("Laptop", 999.0, true),
        Product("Mouse", 29.0, false),
        Product("Keyboard", 79.0, true),
        Product("Monitor", 349.0, true)
    )

    // In-stock products under $500, sorted by price
    val result = products
        .filter { it.inStock && it.price < 500 }
        .sortedBy { it.price }
        .map { "${it.name}: ${it.price}" }

    result.forEach { println(it) }
}

any, all, count

Fonctions d’agrégation pour obtenir rapidement des réponses :

  • any { condition } — true si au moins un élément correspond
  • all { condition } — true si tous les éléments correspondent
  • count { condition } — nombre d’éléments correspondants
  • sumOf { it.price } — somme d’une propriété numérique

Vérification rapide

Quelle fonction utiliseriez-vous pour obtenir uniquement les éléments d’une liste qui satisfont une condition ?

Récapitulatif : collections Kotlin

Vous pouvez désormais travailler efficacement avec les données en Kotlin :

  • listOf / mutableListOf, mapOf / mutableMapOf
  • filter — sélectionner les éléments correspondants
  • map — transformer les éléments
  • sortedBy / sortedByDescending
  • Chaîner les opérations pour obtenir des pipelines de données clairs et lisibles

Ensuite : afficher des listes à l’écran avec RecyclerView.

Questions Fréquemment Posées

La leçon « Collections Kotlin » est-elle gratuite ?

Oui — le texte complet de « Collections Kotlin » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Android Academy, passe à CoddyKit PRO. Le cours Android Academy comprend 6 leçons au total.

Qu'est-ce que j'apprendrai dans « Collections Kotlin » ?

Travaillez avec List, Set et Map. Utilisez des opérateurs fonctionnels comme filter, map, sortedBy, forEach, find, any et all, puis chaînez les opérations pour transformer les données de manière conc… Tu pratiques Android Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Android Academy ?

Aucune expérience préalable n'est requise. Android Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 6.

Combien de temps prend la leçon « Collections Kotlin » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Android Academy ?

Oui. Chaque leçon Android Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Collections Kotlin
  2. Bases de RecyclerView
  3. Événements de clic dans RecyclerView
  4. SharedPreferences
  5. Préférences DataStore
  6. Adaptateurs et DiffUtil
← Retour à Android Academy