Map types

未匹配的标注

字典是相同元素类型的无序集合,通过一些唯一的 下标 来获取对应的数值,这些下标可以是其他类型,这些类型称为键类型。未初始化的字典的内容为nil

MapType     = "map" "[" KeyType "]" ElementType .
KeyType     = Type .

对比操作符 == 和 != 必须明确写明操作对象的键类型,因此键类型不能是函数,表或者切片。如果这个键类型是接口类型,这些对比操作符必须定义清楚动态键值,错误会导致 运行时灾难

map[string]int
map[*T]struct{ x, y float64 }
map[string]interface{}

字典元素的个数称为其长度,对于一个字典 m,可以通过内置函数 len 来获取其长度,不过它在执行过程中可能会有变动。字典的元素可以在执行过程中通过  赋予 来新增,可以通过 下标表达式 来获取,也可以通过  delete 来删除。

通过内置函数  make 可以创建一个新的空字典, 它需要类型和可选的容量作为输入参数:

make(map[string]int)
make(map[string]int, 100)

字典的初始化容量并不会限制它的规模,意思是可以增长到它所有元素所需的容量,除了 nil 字典。nil字典基本上是一个空字典,除了它不能被添加元素。

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/go-specificatio...

译文地址:https://learnku.com/docs/go-specificatio...

上一篇 下一篇
贡献者:2
讨论数量: 0
发起讨论 只看当前版本


暂无话题~