Sobes.tech
Junior — Middle

La structure de données Map dans le langage de programmation est-elle triable par clés?

sobes.tech IA

Réponse de l'IA

Dans le langage Go, la structure de données intégrée map ne garantit pas le tri par clés. L’ordre d’itération des éléments dans map est aléatoire et peut changer entre les itérations.

Si vous souhaitez trier les éléments par clés, il faut extraire les clés dans une tranche, la trier avec sort, puis parcourir le map dans l’ordre des clés triées:

keys := make([]string, 0, len(m))
for k := range m {
    keys = append(keys, k)
}
sort.Strings(keys)
for _, k := range keys {
    fmt.Println(k, m[k])
}

Ainsi, le map lui-même n’est pas trié, mais le tri peut être réalisé manuellement.