8.数组¶
声明¶
go语言也有数组类似,其声明如下:
go语言中还有一种声明方式,可以在一行语句中同时完成声明和赋值:
也可以向C语言一样自动判断长度,使用...
代表长度,go编译器将自动判断长度:
Warning
go语言中的数组与C语言一样,是不可变更长度的。
同时,不论两个数组长度之间的关系如何,只要长度不等,就是两种数据类型。
元素的访问¶
go语言中数组元素的访问和C语言一样,使用array[index]
访问,且索引index
从0开始。
和Python一样,数组的长度可以用len(array)
确定。
数组之间的复制¶
两个数组变量可以复制,也可以用一个数组初始化另一个变量。但是复制时会拷贝值,而不是引用同一个地址。
同理,当数组作为变量传递给函数时,与C或Python不同,传递的是 值 ,而不是指针。在函数内更改并不会影响原变量。故一般不使用数组作为函数的参数,而使用go语言中的slice
类型。
高维数组¶
和C或Python一样,go语言也有高维数组,或者称为数组的数组,声明方式如下: