在Go語言中,可以使用copy()
函數來拷貝數組。
copy(destSlice, srcSlice)
函數接受兩個切片作為參數,將源切片的元素拷貝到目標切片中。拷貝的元素數量取決于兩個切片的長度,如果源切片的長度大于或等于目標切片的長度,則只會拷貝目標切片長度的元素;如果源切片的長度小于目標切片的長度,則會拷貝源切片的所有元素,并將剩余位置的元素清零。
示例代碼如下:
package main
import (
"fmt"
)
func main() {
src := []int{1, 2, 3, 4, 5}
dest := make([]int, len(src))
copy(dest, src)
fmt.Println(dest) // 輸出 [1 2 3 4 5]
// 修改源切片,目標切片不受影響
src[0] = 100
fmt.Println(src) // 輸出 [100 2 3 4 5]
fmt.Println(dest) // 輸出 [1 2 3 4 5]
}
在上述代碼中,我們使用copy()
函數將源切片src
的元素拷貝到目標切片dest
中,并打印出目標切片的內容。修改源切片的元素后,目標切片不受影響。