Menu
Coddy logo textTech

List vs MutableList

Fait partie de la section Fondamentaux du Journey Kotlin de Coddy. Leçon 67 sur 93.

Jusqu’à présent, tu as travaillé avec des variables individuelles qui contiennent une seule valeur. Mais que faire si tu dois stocker une collection d’éléments, comme une liste de noms ou une série de nombres ? C’est là que les listes interviennent.

Kotlin fournit deux types de listes : List et MutableList. La différence essentielle réside dans le fait que vous pouvez ou non modifier la liste après l’avoir créée.

Une List est en lecture seule. Son interface n’expose pas d’opérations permettant d’ajouter, de supprimer ou de remplacer des éléments. Cela ne garantit pas une immutabilité profonde : le même objet mutable sous-jacent pourrait être modifié via une autre référence :

val fruits = listOf("Apple", "Banana", "Cherry")
val numbers = listOf(1, 2, 3, 4, 5)

Une MutableList permet d’effectuer des modifications. Vous pouvez ajouter de nouveaux éléments, supprimer ceux qui existent déjà ou mettre à jour les valeurs :

val fruits = mutableListOf("Apple", "Banana")
fruits.add("Cherry")  // Contient maintenant : Apple, Banana, Cherry

Utilisez listOf() lorsque vos données ne doivent pas changer, et mutableListOf() lorsque vous avez besoin de flexibilité. Cette distinction aide à éviter les modifications accidentelles et rend l’intention de votre code plus claire.

challenge icon

Défi

Moyen

Crée une liste en lecture seule appelée colors contenant trois chaînes : "Red", "Green" et "Blue".

Crée ensuite une liste modifiable appelée numbers commençant par deux entiers : 10 et 20.

Ajoute la valeur 30 à la liste numbers.

Enfin, affiche les deux listes sur des lignes distinctes dans cet ordre :

  1. La liste colors
  2. La liste numbers

Essayez vous-même

fun main() {
    // TODO: Créer une liste en lecture seule appelée 'colors' avec "Red", "Green", "Blue"
    
    // TODO: Créer une liste mutable appelée 'numbers' avec 10 et 20
    
    // TODO: Ajouter 30 à la liste numbers
    
    // TODO: Afficher les deux listes sur des lignes séparées (colors d'abord, puis numbers)
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Playground Kotlin