温馨提示×

go语言中append函数怎么使用

小亿
245
2024-01-23 09:39:08
栏目: 编程语言

在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()函数会返回原始切片。
  • 如果追加的元素是切片,需要使用...操作符将切片打散。

0