本文實例講述了go語言通過反射獲取和設置結構體字段值的方法。分享給大家供大家參考。具體實現方法如下:
type MyStruct struct {
N int
}
n := MyStruct{ 1 }
// get
immutable := reflect.ValueOf(n)
val := immutable.FieldByName("N").Int()
fmt.Printf("N=%d\n", val) // prints 1
// set
mutable := reflect.ValueOf(&n).Elem()
mutable.FieldByName("N").SetInt(7)
fmt.Printf("N=%d\n", n.N) // prints 7
希望本文所述對大家的go語言程序設計有所幫助。