为什么地图遍历是顺序的?

时间:2020-02-17 05:42:44

标签: go hash hashmap

那不是乱序输出 质量检查

这是我的代码

var i=map[int]int{
   1:1,
   2:2,
   3:3,
}
for i2, i3 := range i {
       fmt.Println(i2, i3)
}

输出为

1 1
2 2
3 3

为什么?

1 个答案:

答案 0 :(得分:1)

转到地图不保证迭代顺序。实际上,顺序可以从一个迭代更改为另一迭代,并且插入顺序和特定于类型的值顺序无关。这里有更多信息:

https://blog.golang.org/go-maps-in-action