至此,我们已经学了一部分简单的类型和结构。现在,让我们开始学习 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 (切片) 出来了。

热门教程

最新教程