Go语言的数组是一个定长的序列,数组包含的元素的类型相同。
package main import "fmt" func main() { // 这里我们创建了一个具有5个元素的整型(int)数组 // 元素的数据类型和数组长度都是数组类型的一部分 // 默认情况下,数组元素都是零值。 // 对于整数,零值就是0 var a [5]int fmt.Println("emp:",a) // 我们可以使用索引值(index)来设置数组元素的值,就像这样"array[index] = value" // 或者使用索引来获取元素值, 如 "array[index]" a[4] = 100 fmt.Println("set:",a) fmt.Println("get:",a[4]) // 内置的len函数返回数组的长度 fmt.Println("len:",len(a)) // 使用下列方法可以同时定义和初始化一个数组 b := [5]int{1,2,3,4,5} fmt.Println("dcl:",b) // 数组都是一维的,但是你可以把数组的元素定义为一个数组 // 来获取多维数组结构 var twoD [2][3]int for i := 0; i < 2; i++ { for j := 0; j < 3; j++ { twoD[i][j] = i + j } } fmt.Println("2d: ",twoD) }输出
$ go run arrays.go emp: [0 0 0 0 0] set: [0 0 0 0 100] get: 100 len: 5 dcl: [1 2 3 4 5] 2d: [[0 1 2] [1 2 3]]当你使用fmt.Println输出数组时候,你会发现数组会以[v1,v2,v3...]形式被打印。
在经典的Go语言中,相比与数组(Array)你会更多的遇到切片(slice)。
要了解更多关于数组,请查看学习Golang语言(5): 类型--数组
下一个章节将会讲解切片。
下一个例子: Go by Example: Slices.