在本课中,我们将介绍 Go 语言中的数组和切片。这两个概念都是用于存储一组数据,但它们有着不同的特点和用法。
4.1 数组
数组是一种固定长度、由相同类型元素组成的序列。在 Go 中,声明一个数组需要先指定数组的长度和元素类型。例如,下面是一个长度为 5 的整型数组:
var arr [5]int
go复制代码
var arr [5]int
我们可以使用下标来访问数组中的元素,下标从 0 开始计数。例如,要访问数组中的第一个元素,可以使用 arr[0]
;要访问最后一个元素,可以使用 arr[len(arr)-1]
。
Go 中的数组是值类型,这意味着当将一个数组赋给另一个变量时,会发生数组的拷贝。如果想要避免数组的拷贝,可以使用数组的指针。
与其他语言不同,Go 中的数组长度是数组类型的一部分。因此,长度不同的数组被认为是不同类型的。例如,[5]int
和 [10]int
是两种不同的数组类型,不能直接进行比较或赋值。
初始化数组
在声明数组时,可以同时为数组赋初值。有以下几种初始化数组的方法:
方法一:指定元素