array

底层结构

连续的内存,类型和长度决定,两者相同才是同一类型,才能比较。见NewArray

当使用[...]int{1,2,3,4}的方式声明的时候,go会进行上限推导。

初始化的时候,在不考虑逃逸分析的情况下,如果数组中元素的个数小于或者等于4个,那么所有的变量会直接在栈上初始化,
如果数组元素大于4个,变量就会在静态存储区初始化然后拷贝到栈上。

常用情景

已知元素数量,可以用数组。

注意事项

数组越界等一些错误,会在编译期间就检查。(还有索引非整数,索引是复数)

参考