golang-反射机制

golang-反射机制,第1张

概述1,写数据库dao层的时候用到了反射机制。在反射的时候要注意你的对象时指针还是结构体这样区别也很大。以下接受几种常用的放射方法 reflect.type of package mainimport ( "fmt" "reflect")type hehe struct { NameFile string "PrimaryKey" age int}func main(

1,写数据库dao层的时候用到了反射机制。在反射的时候要注意你的对象时指针还是结构体这样区别也很大。以下接受几种常用的放射方法

reflect.type of

package mainimport (	"fmt"	"reflect")type hehe struct {	namefile string "PrimaryKey"	age      int}func main() {	hehe := &hehe{"ssssssssssss",33}	yingShe(hehe)}func yingShe(obj interface{}) {	hehe := &hehe{"ssssssssssss",22}	for i := 0; i < reflect.TypeOf(obj).Elem().NumFIEld(); i++ {		f := reflect.TypeOf(obj).Elem().FIEld(i)		fmt.Print(f.name," : ")		switch reflect.ValueOf(hehe).Elem().FIEldByname(f.name).Kind() {		case reflect.Int:			val := reflect.ValueOf(hehe).Elem().FIEldByname(f.name).Int()			fmt.Println(val)		default:			val := reflect.ValueOf(hehe).Elem().FIEldByname(f.name)			fmt.Print(val)		}		fmt.Println(",",reflect.TypeOf(hehe).Elem().FIEld(i).Tag)	}}
运行结果
namefile : ssssssssssss,PrimaryKeyage : 22,
总结

以上是内存溢出为你收集整理的golang-反射机制全部内容,希望文章能够帮你解决golang-反射机制所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1286971.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存