一、Map
·Map 是一种无序的键值对的集合。Map 最重要的一点是通过 key 来快速检索数据,key 类似于索引,指向数据的值。
·Map 是一种集合,所以我们可以像迭代数组和切片那样迭代它。不过,Map 是无序的,我们无法决定它的返回顺序,这是因为 Map 是使用 hash 表来实现的。
Map-声明&初始化
Map使用前必须初始化
Map-示例
输出结果:
Japan 首都是 东京
India 首都是 新德里
China 首都是 北京
二、Slice
·Go 语言切片是对数组的抽象。
·Go 数组的长度不可改变,在特定场景中这样的集合就不太适用,Go中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固定的,可以追加元素,在追加时可能使切片的容量增大。
Slice-声明&初始化
Slice-长度&容量
Slice-截取
数据截取方法 s[start, end] 左闭右开规则
Slice-追加&拷贝
三、Range
·Go 语言中 range 关键字用于 for 循环中迭代数组(array)、切片(slice)、通道(channel)或集合(map)的元素。在数组和切片中它返回元素的索引和索引对应的值,在集合中返回 key-value 对的 key 值。
输出结果:
sum: 9
index: 1
a -> apple
b -> banana
0 103
1 111