关于 数组是可变的 的疑问
文章中的 数组是可变的 应该怎么样去理解呢?
对索引项为 i 的数组元素赋值可以这么操作:arr[i] = value
但是事实上这个赋值
func main() {
var arr [2]int
arr[0] = 1
arr[1] = 2
arr[2] = 3
fmt.Println(arr)
}
会报错的 invalid array index 2
文章中所说的如下:
第一个元素是 arr1[0]
,第三个元素是 arr1[2]
;总体来说索引 i 代表的元素是 arr1[i]
,最后一个元素是 arr1[len(arr1)-1]
。
对索引项为 i 的数组元素赋值可以这么操作:arr[i] = value
,所以数组是 可变的。
只有有效的索引可以被使用,当使用等于或者大于 len(arr1)
的索引时:如果编译器可以检测到,会给出索引超限的提示信息;如果检测不到的话编译会通过而运行时会 panic:(参考 第 13 章)
runtime error: index out of range
推荐文章: