在Go语言中,数组的初始化有多种方法,我会一一为你列举如下:
- 基本初始化:
可以在声明数组时直接指定元素的初始值,由编译器自动推断数组的长度。
// 方法1:使用数组字面值初始化
arr1 := [3]int{1, 2, 3}
// 方法2:使用自动推断数组长度
arr2 := [...]int{4, 5, 6}
- 指定索引初始化:
可以通过指定索引来初始化数组的部分元素,未指定的元素将使用零值初始化。
arr3 := [5]int{0: 10, 2: 20, 4: 30}
// 结果:[10 0 20 0 30]
- 使用
make()
函数初始化切片并转换为数组:
通过make()
函数初始化一个切片,然后使用切片的长度和容量来创建一个对应的数组。
slice := make([]int, 3) // 切片初始化,结果:[0 0 0]
arr4 := [3]int{} // 数组初始化,结果:[0 0 0]
copy(arr4[:], slice) // 将切片内容复制到数组
- 使用循环初始化:
可以通过循环来遍历数组的索引,并设置对应的值。
arr5 := [5]int{}
for i := 0; i < len(arr5); i++ {
arr5[i] = i * 2
}
// 结果:[0 2 4 6 8]
- 使用数组字面值初始化多维数组:
对于多维数组,可以使用嵌套的数组字面值进行初始化。
matrix := [2][3]int{
{1, 2, 3},
{4, 5, 6},
}
这些是数组初始化的常见方法,你可以根据实际需求选择最适合的初始化方式。需要注意的是,数组的长度在初始化时需要确定,并且初始化后数组的长度是不可变的。
标签:初始化,int,切片,数组,使用,Go,长度 From: https://www.cnblogs.com/tangjicheng/p/17583661.html