Golang 切片的复制与追加
在Golang中,切片的复制和追加可以通过多种方式实现。
- 使用
copy
函数复制切片:
originalSlice := []int{1, 2, 3}
newSlice := make([]int, len(originalSlice))
copy(newSlice, originalSlice)
- 使用切片再次声明进行复制:
originalSlice := []int{1, 2, 3}
newSlice := originalSlice[:]
- 使用
append
函数追加元素到切片:
originalSlice := []int{1, 2, 3}
newSlice := append(originalSlice, 4)
- 使用
...
运算符将一个切片追加到另一个切片:
originalSlice := []int{1, 2, 3}
anotherSlice := []int{4, 5}
newSlice := append(originalSlice, anotherSlice...)
注意:在使用 append
函数时,如果原始切片容量不足以容纳所有元素,则会创建一个新的底层数组,并按照新的容量分配新的内存空间。在这种情况下,原始切片和新切片将引用不同的底层数组。
评论已关闭