阅读量:0
Go语言的append
函数用于向切片(slice)追加元素。
append
函数的基本语法如下:
append(slice []T, elements ...T) []T
其中,slice
表示要追加的切片,elements
表示要追加的元素(可以是一个或多个),返回值为追加元素后的新切片。
append
函数的工作原理如下:
- 如果原切片的容量足够,
append
函数将追加元素到原切片的末尾,并返回原切片,而不会创建新的切片。 - 如果原切片的容量不够,则会创建一个新的切片,将原切片中的元素复制到新切片中,并追加新元素。
下面是一些常见的append
函数的用法示例:
// 追加一个元素到切片 slice := []int{1, 2, 3} slice = append(slice, 4) // 追加多个元素到切片 slice := []int{1, 2, 3} slice = append(slice, 4, 5, 6) // 追加一个切片到另一个切片 slice1 := []int{1, 2, 3} slice2 := []int{4, 5, 6} slice1 = append(slice1, slice2...) // 追加一个切片到切片的末尾,并限制追加的元素个数 slice1 := []int{1, 2, 3} slice2 := []int{4, 5, 6} slice1 = append(slice1, slice2[:2]...) // 追加一个切片到切片的指定位置 slice1 := []int{1, 2, 3} slice2 := []int{4, 5, 6} slice1 = append(slice1[:1], append(slice2, slice1[1:]...)...)
需要注意的是,append
函数返回的是新切片,因此需要将其赋值给原切片来更新原切片的值。