【Go】静态数组


  1. 不赋值
  2. 全赋值
  3. 部分赋值
  4. 参数传递(值传递、数组长度必须一致

测试1.2.3

1
2
3
4
5
6
7
8
9
10
11
12
func main() {
// 1.静态数组
var arr1 [5]int // 不赋值
var arr2 = [5]int{1, 2, 3, 4, 5} // 全赋值
var arr3 = [10]int{1, 2, 3, 4, 5} // 部分赋值

// 测试
fmt.Println("----静态数组----")
fmt.Println("arr1:", arr1)
fmt.Println("arr2:", arr2)
fmt.Println("arr3:", arr3)
}

结果

测试4

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package main

// 测试静态数组参数传递
func test2(array [5]int) {
array[0] = 100
}

func main() {
// 1.静态数组
var arr1 [5]int // 不赋值
var arr3 = [10]int{1, 2, 3, 4, 5} // 部分赋值

// 测试
fmt.Println("----静态数组----")
fmt.Println("arr1:", arr1)
fmt.Println("arr3:", arr3)

// 测试值传递
test2(arr1)
fmt.Println("----函数调用后----")
fmt.Println("arr1:", arr1)

// 测试数组长度不一致的参数传递
test2(arr3)
}

测试值传递结果

测试数组长度不一致结果