简介
数组是具有固定长度且拥有0个或者多个相同数据类型元素的集合。在Go语言中,由于数组的长度固定,所以很少直接使用数组,而是经常使用切片(slice)。
数组就是把同一类东西放到一起,然后排上序号。因为数组通常包含多个元素,所以再给数组命名时,建议使用复数形式。
声明数组
Go 语言数组声明需要指定元素类型及元素个数,语法格式如下:
vararr_name [SIZE] arr_type
这是一维数组的定义方式。
下面就声明一个数组名为array,元素个数为10,数据类型为int型的数组。
vararray [10] int
初始化数组
🎈第一种方式:
var list = [5] int{ 1,2,3,4,5, }
这里需要注意的是,数组的{}不在同一行的话,记得在最后一个元素后面加上一个逗号。
🎈第二种方式:
list := [5] int{1,2,3,4,5}
其实就是省去var,用短定义的方式来初始化。
数组的长度必须是常量,这个值在程序编译时就可以确定。
如果一个数组中的元素类型是可以比较的,那么这个数组就是可以比较的,此时可以使用“==”运算符来比较两个数组。
数组索引与访问
数组的索引和C语言一样,都是从下标为0开始,而不是从1开始。
访问数组元素也只需要将该元素的位置或索引告诉Go语言即可。访问格式就是:数组名[索引值]
遍历数组
日常工作中,经常需要遍历数组中的所有元素,对每个元素执行相同的操作。
一般我们使用for range循环处理遍历数组的问题。
👇方式
- 首先定义一个数组
- 定义一个for循环,for循环这段代码可以让Go语言从数组中取出一个下标和对应的元素,并将其存储在变量a和b中(变量可自行定义)
- 打印变量a和b
a代表元素所在数组的索引值,b代表元素本身。
packagemainimport"fmt"funcmain() { varlist= [5]string{ "矿泉水", "冰红茶", "绿茶", "可乐", "芬达", } fora, b :=rangelist { desc :=fmt.Sprintf("%d-%s", a, b) fmt.Println(desc) } }
打印结果如下:
0-矿泉水
1-冰红茶
2-绿茶
3-可乐
4-芬达