Junior — Middle
Quelle est la différence entre l'utilisation d'une map et d'une slice en Go, et dans quels cas est-il préférable d'utiliser l'un ou l'autre?
sobes.tech IA
Réponse de l'IA
En Go, map et slice servent à des fins différentes :
- map — tableau associatif, structure pour stocker des paires clé-valeur avec un accès rapide par clé. Les clés sont uniques.
- slice — tableau dynamique, collection ordonnée d'éléments, accès par index.
Quand utiliser :
- Utilisez map si vous avez besoin de trouver rapidement des éléments par une clé unique, par exemple, stocker des utilisateurs par ID.
- Utilisez slice si l'ordre des éléments est important, ou si vous devez stocker un ensemble d'éléments sans clés, par exemple, une liste de tâches.
Exemple :
// map pour stocker les notes des étudiants par nom
grades := map[string]int{"Alice": 90, "Bob": 85}
// slice pour stocker une liste de noms
names := []string{"Alice", "Bob", "Charlie"}
Le choix dépend de la tâche : pour la recherche par clé — map, pour une liste ordonnée — slice.