循環結構體,修改結構體中某個字段的值
背景:使用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 = "二級部門"
}