Go 使用for循环对结构体成员赋值注意事项


2021-04-29 Golang

# Go 使用for循环对结构体成员赋值注意事项

type ClassworkGradeResponse struct {
	StudentID  int     `json:"student_id"`
	Username   string  `json:"username"`
	Nickname   string  `json:"nickname"`
	Tiwen      float32 `json:"tiwen"`
	Zhanshi    float32 `json:"zhanshi"`
	Hudong     float32 `json:"hudong"`
	FinalScore float32 `json:"final_score"`
}

var classworkGradeResponse []ClassworkGradeResponse

// 计算最终得分 错误写法
for i, v := range classworkGradeResponse {
    v.FinalScore = (v.Tiwen + v.Zhanshi + v.Hudong) / 3
}

// 计算最终得分 正确写法
for i, v := range classworkGradeResponse {
    classworkGradeResponse[i].FinalScore = (v.Tiwen + v.Zhanshi + v.Hudong) / 3
}
Last Updated: 4/29/2021, 2:12:11 PM