package main
import ( "fmt" "reflect" )
type User struct {
Id int
Name string
//addr string
}
func main(){
u := User{Id:1001, Name:"xxx"/*, addr:"xxx"*/}
t := reflect.TypeOf(u)
v := reflect.ValueOf(u)
for k := 0; k < t.NumFiled(); k++ {
fmt.Printf("%s -- %v \n", t.Filed(k).Name, v.Field(k).Interface())
}
}
注:当结构体中含有非导出字段时,v.Field(k).Interface()会 panic
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于