切片间的拷贝操作

Golang 内置的 copy() 函数可以将一个切片中的元素拷贝到另一个切片中,其函数声明为:

  1. func copy(dst, src []Type) int

它表示把切片 src 中的元素拷贝到切片 dst 中,返回值为拷贝成功的元素个数。如果 srcdst 长,就截断;如果 srcdst 短,则只拷贝 src 那部分:

  1. num1 := []int{10, 20, 30}
  2. num2 := make([]int, 5)
  3. count := copy(num2, num1)
  4. fmt.Println(count)
  5. fmt.Println(num2)

运行这段单面,输出的结果为:

:::info 3

[10 20 30 0 0]

3 表示拷贝成功的元素个数。

:::