go - 循环结构体,修改结构体中某个字段的值
循环结构体,修改结构体中某个字段的值
背景:使用go获取部门列表后,需要修改其中的一个字段的值,将level = 2 修改为 level = “二级部门”
错误方法1:结构体转json后,不行
for _, item := range departments {
item.Level = "二级部门
}
错误方法2:通过反射,普通的可以,结构体转json后不行
for _, item := range departments {
level := reflect.ValueOf(&item.Level)
level.Elem().SetString("二级部门")
}
正确方法:通过index去修改
for index, _ := range departments {
departments[index].Level = "二级部门"
}
本文来自博客园,作者:alisleepy,转载请注明原文链接:https://www.cnblogs.com/alisleepy/p/16102255.html