package main
import "fmt"
func main() {
var a [5]int
fmt.Println("emp:", a)
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 // 声明和默认初始化为0
// var twoD =[2][3]int{{1, 2, 3},{3, 4, 5}} // 声明和赋值写法一
// twoD := [2][3]int{{1, 2, 3},{3, 4, 5}} // 声明和赋值写法二
// twoD := [...][3]int{{1, 2, 3},{3, 4, 5}} // 声明和赋值写法三
fmt.Println("2d: ", twoD)
//用for语句来循环赋值
for i := 0; i < 2; i++ {
for j := 0; j < 3; j++ {
twoD[i][j] = i + j
}
}
fmt.Println("2d: ", twoD)
}
执行结果:
emp: [0 0 0 0 0]
set: [0 0 0 0 100]
get: 100
len: 5
dcl: [1 2 3 4 5]
2d: [[0 0 0] [0 0 0]]
2d: [[0 1 2] [1 2 3]]
package main
import "fmt"
func main() {
// Here we create an array `a` that will hold exactly
// 5 `int`s. The type of elements and length are both
// part of the array's type. By default an array is
// zero-valued, which for `int`s means `0`s.
//创建一个a数组, 该数组有5个整形元素。 元素的类型和长度都是数组类型的组成部分。
//数组元素的默认是值是0,也是就是整形的默认值是0。
var a [5]int
fmt.Println("emp:", a)
// We can set a value at an index using the
// `array[index] = value` syntax, and get a value with
// `array[index]`.
// 用如下方式可以给一个指定索引的数组赋值`array[index] = value`, 用`array[index]`可以获取一个值。
a[4] = 100
fmt.Println("set:", a)
fmt.Println("get:", a[4])
// The builtin `len` returns the length of an array.
// 内建的`len`可以获取数组的长度。
fmt.Println("len:", len(a))
// Use this syntax to declare and initalize an array
// in one line.
//在一行内,可以用如下方式声明和初始化一个数组
//注: 这种方式是用的最多的。
b := [5]int{1, 2, 3, 4, 5}
fmt.Println("dcl:", b)
// Array types are one-dimensional, but you can
// compose types to build multi-dimensional data
// structures.
// 数组类型是一维的, 但你可以组成一个类型来构建一个多维数据结构。
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)
}