Sobes.tech
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.