数组
类型 [n]T 表示一个数组,n 是数组长度,数组长度是固定的
go
var a [10]int切片
[]T 表示一个元素类型为 T 的切片
切片并不存储任何数据,它只是描述了底层数组中的一段。
go
func main() {
primes := [6]int{2, 3, 5, 7, 11, 13}
var s []int = primes[1:4]
fmt.Println(s)
// [3 5 7]
}a[low : high] 包括 low,但排除 high
切片默认值
go
var a [10]int
// 以下切片表达式等价
a[0:10]
a[:10]
a[0:]
a[:]len 和 cap
len → 当前可用元素数量
cap → 最多能放多少元素
切片的默认值/零值
nil
go
func main() {
var s []int
fmt.Println(s, len(s), cap(s))
if s == nil {
fmt.Println("nil!")
}
}append
func append(s []T, vs ...T) []Tappend 只能用于切片,切片是可以创建新切片,从而达到变化数组的效果