本文概述
在Go中, 数组是同构数据结构(固定类型), 并且具有固定长度。该类型可以是整数, 字符串或自定义类型之类的任何东西。
数组中的项目可以通过其索引进行访问, 它从零开始。数组中的项目数称为数组的长度或大小。它是固定的, 必须在数组变量的声明中声明。
句法:
var identifier [len]type
例:
var arr_name [5]int
数组实例
package main
import "fmt"
func main() {
var x [5]int
var i, j int
for i = 0; i < 5; i++ {
x[i] = i + 10
}
for j = 0; j < 5; j++ {
fmt.Printf("Element[%d] = %d\n", j, x[j])
}
}
输出:
Element[0] = 10
Element[1] = 11
Element[2] = 12
Element[3] = 13
Element[4] = 14
多维数组
多维数组只是一维数组的列表。
语法:
var arrayName [ x ][ y ] variable_type
例:
a = [3][4]int
初始化二维数组
a = [2][3]int{
{2, 4, 6} , /* initializers for row indexed by 0 */
{8, 10, 12} , /* initializers for row indexed by 1 */
}
访问二维数组
int val = a[1][2]
转到多维数组示例
package main
import "fmt"
func main() {
/* an array with 3 rows and 3 columns*/
var a = [3][3]int{ {1, 2, 3}, {4, 5, 6}, {7, 8, 9}}
var i, j int
/* output each array element's value */
for i = 0; i < 3; i++ {
for j = 0; j < 3; j++ {
fmt.Print(a[i][j] )
}
fmt.Println()
}
}
输出:
123
456
789