golang map 不排序怎么办?
举例 map 如下,由于golang map内部存储机制是以key为hash的结构来实现,所以顺序是混乱的。
fruits := map[string] int { "oranges": 100, "apples": 200, "banans": 300, }
如果希望是有顺序的,可以把 key 转移至 slice,将slice 进行排序,然后输出:
// Put the keys in a slice and sort it. var keys []string for key := range fruits { keys = append(keys, key) } sort.Strings(keys) // Display keys according to the sorted slice. for _, key := range keys { fmt.Printf("%s:%v\n", key, fruits[key]) }
更多go语言知识请关注PHP中文网go语言教程栏目。