Sobes.tech
Junior

Peux-tu expliquer les différences entre List, Set et Map, et dans quels cas les utiliser?

sobes.tech IA

Réponse de l'IA

List - une collection ordonnée permettant les doublons. Les éléments sont accessibles par index.

Set - une collection non ordonnée d'éléments uniques. Ne permet pas les doublons.

Map - une collection de paires "clé-valeur", où chaque clé est unique. Les éléments sont accessibles par clé.

Tableau comparatif :

Caractéristique List Set Map
Ordonnancement Oui Non Dans l'ordre d'ajout (pas toujours)
Doublons Permet N'autorise pas Les clés sont uniques, les valeurs peuvent se répéter
Accès Par index Par itération Par clé
  • Utilisation :
    • List : lorsque l'ordre des éléments est important et que les doublons sont autorisés (par exemple, liste de courses, historique des transactions).
    • Set : lorsque vous avez besoin d'une collection d'éléments uniques et que l'ordre n'a pas d'importance (par exemple, ensemble d'utilisateurs uniques, liste de tags uniques).
    • Map : lorsque vous souhaitez stocker des données sous forme de paires "clé-valeur" et accéder rapidement à une valeur via une clé (par exemple, dictionnaire, paramètres de l'application).

Exemple :

// List
val shoppingList = listOf("pomme", "banane", "pomme")
println(shoppingList[0]) // pomme

// Set
val uniqueFruits = setOf("pomme", "banane", "pomme")
println(uniqueFruits.size) // 2 (pomme apparaît une seule fois)

// Map
val userAges = mapOf("Alice" to 30, "Bob" to 25)
println(userAges["Alice"]) // 30