阅读量:0
在Go语言中,append()
函数用于向切片中追加元素,并返回新的切片。
使用append()
函数的语法如下:
newSlice := append(slice, element1, element2, ..., elementN)
其中,slice
是要追加元素的切片,element1, element2, ..., elementN
是要追加的元素。
示例代码如下:
package main import "fmt" func main() { slice := []int{1, 2, 3} newSlice := append(slice, 4, 5) fmt.Println("Original slice:", slice) fmt.Println("New slice:", newSlice) }
输出结果为:
Original slice: [1 2 3] New slice: [1 2 3 4 5]
append()
函数还可以追加另一个切片,示例代码如下:
package main import "fmt" func main() { slice1 := []int{1, 2, 3} slice2 := []int{4, 5} newSlice := append(slice1, slice2...) fmt.Println("Original slice 1:", slice1) fmt.Println("Original slice 2:", slice2) fmt.Println("New slice:", newSlice) }
输出结果为:
Original slice 1: [1 2 3] Original slice 2: [4 5] New slice: [1 2 3 4 5]
在使用append()
函数时,需要注意以下几点:
append()
函数返回一个新的切片,原始切片不会被修改。- 如果追加的元素个数超过了切片的容量,
append()
函数会重新分配更大的底层数组,导致原始切片和新的切片不是同一个底层数组。 - 如果追加的元素个数没有超过切片的容量,
append()
函数会在原始切片的底层数组上追加元素。 - 如果追加的切片是空切片,
append()
函数会返回原始切片。 - 如果追加的元素是切片,需要使用
...
操作符将切片打散。