浏览 42
更新于 2020-08-23 08:34
至此,我们已经学了一部分简单的类型和结构。现在,让我们开始学习 Arrays (数组), Slices (切片) 和 Maps (映射) 吧。
Arrays
如果你学过 Python , Ruby , Perl , JavaScript 或者 PHP (或者更多其它的语言),那么你肯定习惯 动态数组 编程啦。这些数组的长度可以在添加数据的时候自行调整的。在 Go 中,像其它大部分语言一样,数据的长度是固定的。我们在声明一个数组时需要指定它的长度,一旦指定了长度,那么它的长度值是不可以改变的了:
var scores [10]int
scores[0] = 339
上面的数组最多可以容纳 10 个元素,索引是从 scores[0]
到 scores[9]
。试图访问超过界限的索引系统将会抛出编译或运行时错误。
我们可以在初始化数组的时候指定值:
scores := [4]int{9001, 9333, 212, 33}
我们可以使用 len
函数来获取数组的长度。range
函数在遍历迭代的时候使用:
for index, value := range scores {
}
数组非常高效但是很死板。很多时候,我们在事前并不知道数组的长度是多少。针对这个情况,slices (切片) 出来了。