本节核心内容
- 介绍 什么是数组
- 介绍 如何在Go语言中声明数组
- 介绍 如何对数组进行初始化
- 介绍 如何遍历一个数组获取元素的值
本小节视频教程和代码:百度网盘
可先下载视频和源码到本地,边看视频边结合源码理解后续内容,边学边练。
Go语言数组详解
Go 语言提供了数组类型的数据结构。
数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整形、字符串或者自定义类型。
相对于去声明number0, number1, …, and number99的变量,使用数组形式numbers[0], numbers[1] …, numbers[99]更加方便且易于扩展。
数组元素可以通过索引(位置)来读取(或者修改),索引从0开始,第一个元素索引为 0,第二个索引为 1,以此类推。
声明数组
Go 语言数组声明需要指定元素类型及元素个数,语法格式如下:
var 数组变量名 [元素数量]T
其中:
- 数组变量名:数组声明及使用时的变量名。
- 元素数量:数组的元素数量。可以是一个表达式,但最终通过编译期计算的结果必须是整型数值。也就是说,元素数量不能含有到运行时才能确认大小的数值。
- T 可以是任意基本类型,包括 T 为数组本身。但类型为数组本身时,可以实现多维数组。
var team [3]string
team[0] = "hammer"
team[1] = "soldier"
team[2] = "mum"
fmt.Println(team)
输出结果:
[hammer soldier mum]
代码说明如下:
- 第 1 行,将 team 声明为包含 3 个元素的字符串数组。
- 第 2~4 行,为 team 的元素赋值。
Go语言数组的初始化
数组可以在声明时使用初始化列表进行元素设置,参考下面的代码:
var team = [3]string{"hammer", "soldier", "mum"}
这种方式编写时,需要保证大括号后面的元素数量与数组的大小一致。但一般情况下,这个过程可以交给编译器,让编译器在编译时,根据元素个数确定数组大小。
var team = [...]string{"hammer", "soldier", "mum"}
...
表示让编译器确定数组大小。上面例子中,编译器会自动为这个数组设置元素个数为 3。
遍历数组——访问每一个数组元素
遍历数组也和遍历切片类似,看下面代码:
var team [3]string
team[0] = "hammer"
team[1] = "soldier"
team[2] = "mum"
for k, v := range team {
fmt.Println(k, v)
}
代码输出结果:
hammer
soldier
mum
代码说明如下:
- 第 6 行,使用 for 循环,遍历 team 数组,遍历出的键 k 为数组的索引,值 v 为数组的每个元素值。
- 第 7 行,将每个键值打印出来。
小结
本小节主要讲解了什么是数组,以及如何声明数组,如何对数组进行初始化,和如何遍历一个数组,获取该数组内每一个元素的值。