func display(array []int) { for _, a := range array { fmt.Print(" ", a) } fmt.Println() } func main() { fmt.Println("Hello World!") nums := make([]int, 10, 20) for _, num := range nums { num++ } fmt.Println("第一次赋值") display(nums) for i := 0; i < len(nums); i++ { nums[i]++ } fmt.Println("第二次赋值") display(nums) }
输出:
c:/go/bin/go.exe build -gcflags "-N -l" [E:/go space/src/togo]
成功: 进程退出代码 0.
E:/go space/src/togo/togo.exe [E:/go space/src/togo]
Hello World!
第一次赋值
0 0 0 0 0 0 0 0 0 0
第二次赋值
1 1 1 1 1 1 1 1 1 1
成功: 进程退出代码 0.
说明range 只是将数组中的值拷贝出来,C/C++写习惯的表示刚开始很伤
有疑问加站长微信联系(非本文作者)