作者:牛氏学道_246 | 来源:互联网 | 2022-07-15 06:28
golangmap不排序是因为golangmap内部存储机制是以key为hash的结构来实现,所以顺序是混乱的,那么解决不排序的方法就是把key转移至slice,将slice进行排序即可。
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语言知识请关注go语言教程栏目。
以上就是golang map 不排序怎么办的详细内容,更多请关注其它相关文章!