go语言通过反射获取和设置结构体字段值的方法

秋天是金灿灿的丰收,秋天是沉甸甸的硕果,秋天是让人满载而归的欢笑和欣喜。

本文实例讲述了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语言程序设计有所帮助。

以上就是go语言通过反射获取和设置结构体字段值的方法。活在忙与闲的两种境界里,才能俯仰自得,享受生活的乐趣,成就人生的意义。更多关于go语言通过反射获取和设置结构体字段值的方法请关注haodaima.com其它相关文章!