Warum Karten nicht in der richtigen Reihenfolge gedruckt werden
In Go sind Karten ungeordnete Sammlungen von Schlüssel-Wert-Paaren. Dies bedeutet, dass die Reihenfolge der Elemente in einer Karte nicht garantiert ist. Wenn Sie eine Karte durchlaufen, werden die Elemente in einer willkürlichen Reihenfolge zurückgegeben, was verwirrend oder problematisch sein kann, wenn Sie eine bestimmte Reihenfolge benötigen.
Karten in die richtige Reihenfolge bringen
Um Karten in Ordnung zu bringen, können Sie das Sortierpaket verwenden. Hier ist ein Beispiel:
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]) } }
Dieser Code gibt die Kartenelemente in aufsteigender Reihenfolge der Schlüssel aus:
1 - January 2 - Fabruary 3 - March 4 - April 5 - May 6 - June 7 - July 8 - August 9 - September 10 - October 11 - Novenber 12 - December
Das obige ist der detaillierte Inhalt vonWie kann ich Go Maps in einer bestimmten Reihenfolge durchlaufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!