您的语法有相当多的问题。你声明你的数组是错误的(你的第一个数组将myArray声明为切片,你的第二个数组无效并且不会编译),并且你正在尝试乘以字符串。您正在声明 arr 但不使用它,这也会导致编译错误。此代码段将使用 ints 执行您想要的操作:myArray := [3]int{1, 2, 3}newArray := myArray // copies the original array to a new onefor i := range myArray { // don't care about the value, only the index newArray[i] *= 2 // double the values in the new array}fmt.Println(newArray)另一种无需先复制原始阵列的替代方案:myArray := [3]int{1, 2, 3}newArray := [3]int{}for i := range myArray { newArray[i] = myArray[i] * 2}fmt.Println(newArray)