golang遍历结构体 发表于 2017-06-23 | 更新于 2018-11-26 | 分类于 golang | 评论数: 很多时候,我们可能会需要结构体赋值,又不想一个个字段的写,可以利用结构体遍历赋值 123456789101112131415package mainimport ( "fmt" "reflect")type NotknownType struct { s1, s2, s3 string}var secret interface{} = NotknownType{"Ada", "Go", "Oberon"}func main() { value := reflect.ValueOf(secret) for i := 0; i < value.NumField(); i++ { fmt.Printf("Field %d: %v, %s; \n", i, value.Field(i), value.FieldByName("s1")) }}