收集器
概念:待更新
数组是一种定长且有序的元素收集器
1.数组初始化的几种方式
1.比较常见的有三种
var name [length]type
name := [length]type{
element1,
element2,
element3,
...
elementn,
}
//注意最后这里的,是不可或缺的
//自动推算数组长度的定义方式
name := [...]type{
element1,
element2,
element3,
...
elementn,
}
2.利用make建立一个数组
建立长度为n的一个未初始化数组
name = make([]int,n)
对于make这个函数,网络上查到的资料是Go的内置函数,它的作用是为slice、map或chan初始化并返回引用。make仅仅用于创建slice、map和channel,并返回它们的实例。
但在敲leetcode代码中,发现按照这个定义出来的东西,可以作为一个需要的数组结果,后面学到再校正
3.数组的默认元素
var index [10] int
默认情况下定义出来的数组元素都为0
4.数组的迭代方式
除了常规使用循环遍历,还有一种是使用range函数去遍历数组,这一点有点类似于python中的enurmate
for i,ele := range arr{
//i代表索引,从0开始
//ele 代表遍历到的数组元素
}
5.其他
5.1
go语言在编译时会检测无效的数组索引链接
如果编译时未能发现无效索引,运行时会报panic
var planets [8]string
i := 8
planets[i] = "Pluto"
pluto := planets[i]
fmt.Printf("format", pluto)
输出
这里有个值得探讨的问题就是go语言在编译阶段做了哪些事