当前位置:  开发笔记 > 编程语言 > 正文

golang map是否有顺序

golangmap没有顺序,Map是Go中的内置类型,它将键与值绑定到一起。由于golangmap内部存储机制是以key为hash的结构来实现,所以顺序是混乱的。

Map 是 Go 中的内置类型,它将键与值绑定到一起。可以通过键获取相应的值。 (推荐学习:go)

举例 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])
}

以上就是golang map是否有顺序的详细内容,更多请关注其它相关文章!

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有