数组 #
数组是一个由固定长度,相同类型的元素组成的数据结构。计算机会为数组分配一块连续的内存来保存其中的元素,并且可以利用索引快速访问数组中的元素。
初始化 #
arr1 := [3]int{1, 2, 3}
arr2 := [...]int{1, 2, 3} // `...` 省略号,表示数组的长度是根据初始化值的个数来计算
数组的长度在编译阶段确定,初始化之后大小就无法改变。
数组是否应该在堆栈中初始化在编译期就确定了。
根据数组大小:
- 当元素数量小于或者等于 4 个时,会直接将数组中的元素放置在栈上。
- 当元素数量大于 4 个时,会将数组中的元素放置到静态区,并在运行时取出。