Maison >développement back-end >Golang >Comment parcourir les Go Maps dans un ordre spécifique ?
Pourquoi les cartes s'impriment dans le désordre
Dans Go, les cartes sont des collections non ordonnées de paires clé-valeur. Cela signifie que l'ordre des éléments dans une carte n'est pas garanti. Lorsque vous parcourez une carte, les éléments sont renvoyés dans un ordre arbitraire, ce qui peut prêter à confusion ou poser problème si vous avez besoin d'un ordre spécifique.
Mettre les cartes dans l'ordre
Pour mettre les cartes en ordre, vous pouvez utiliser le package sort. Voici un exemple :
package main import ( "fmt" "sort" ) type monthsType struct { no int text string } var months = map[int]string{ 1:"January", 2:"Fabruary", 3:"March", 4:"April", 5:"May", 6:"June", 7:"July", 8:"August", 9:"September", 10:"October", 11:"Novenber", 12:"December", } func main(){ // Create a slice of the map keys keys := make([]int, len(months)) i := 0 for key := range months { keys[i] = key i++ } // Sort the slice of keys sort.Ints(keys) // Iterate over the keys and print the corresponding values for _, key := range keys { fmt.Println(key, "-", months[key]) } }
Ce code affichera les éléments de la carte par ordre croissant des clés :
1 - January 2 - Fabruary 3 - March 4 - April 5 - May 6 - June 7 - July 8 - August 9 - September 10 - October 11 - Novenber 12 - December
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!