Sobes.tech
Senior

Quels types de données peuvent être utilisés comme clé pour une carte ? Peut-on utiliser un tableau comme clé ?

sobes.tech IA

Réponse de l'IA

En Go, la clé pour une carte peut être n'importe quel type qui supporte l'opération de comparaison == et !=. Cela signifie que les clés peuvent être des types de base (int, string, bool, etc.), des pointeurs, des structures si tous leurs champs sont comparables, et aussi des interfaces si le type dynamique est comparable.

Les tableaux en Go sont comparables si leurs éléments sont comparables, donc les tableaux peuvent être utilisés comme clés dans une carte. Par exemple :

m := make(map[[3]int]string)
 m[[3]int{1, 2, 3}] = "valeur"

Cependant, les slices ne peuvent pas être utilisés comme clés, car ils ne sont pas comparables (sauf lorsqu'ils sont comparés à nil).