[Golang]for range用于遍历,不能对数组的值进行改变

82 阅读1分钟

问题描述

在对一个切片类型的结构体中每一个结构体的属性进行赋值的时候,通过打印,发现使用for range改变值后结构体内数据值没有发生变化,之前因为没有注意这个细节点,导致耽误了一天的时间,特此记录。

怎么赋值

go中有两种方法进行遍历和赋值,一种是for循环,一种是for range,因为for range遍历用的是数组的复制值,所以再进行更改也没有什么作用,应该使用for循环来进行 遍历
如下所示:正确示例:
在这里插入图片描述
希望对您有所帮助!!