Go语言笔记:struct结构遍历

来源:互联网 发布:ubuntu 安装 uefi启动 编辑:程序博客网 时间:2024/06/05 16:32


package mainimport (        "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




0 0
原创粉丝点击