我想复制一个数组,但复制的数组总是对原始数组进行更改。为什么会这样?
下面是该问题的代码示例:
package main
import (
"fmt"
)
func main() {
array := make([]int, 2)
for i := range array {
array[i] = 0
}
oldArray := array
array[0] = 3 // why does this also change oldArray?
oldArray[1] = 2 // why does this also change the original array?
fmt.Println(oldArray, array)
// I expected [0,2], [3,0]
// but it returns [3,2], [3,2]
}
我之前尝试启动变量,但结果是相同的。oldArrayarray
临摹微笑
暮色呼如
相关分类