在for range循环中,参与迭代的是range表达式的副本。如数组s,在for i, v := range s {...}中参与迭代的并不是真正的数组s,而是数组s的副本,也就是在该语句中对s的操作只会影响原有数组s,而不会影响range后边的s(数组s的副本s')。func arrayRangeExpression() { var s = [5]int{1, 2, 3, 4, 5} var s1 [5]int for i, v := range s { // 数组s的副本 if i == 0 { s[1] = 12 s[2] = 13 } s1[i] =...