从品牌网站建设到网络营销策划,从策略到执行的一站式服务
之前写java的时候就已经知道了有反射这个概念,看过一遍文戚橡章专门介绍了一下java的反射机制,不过现在忘记了。
创新互联专注于岗巴企业网站建设,响应式网站,商城建设。岗巴网站建设公司,为岗巴等地区提供建站服务。全流程按需策划,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
今天写一个通用函数的时候要对传入的参数经行类型判断,还要定义与其像同类型的变量经行取址运算,baidu, google,golang reflect包也看了好久,也没看到将返回值来定义个变量的办法。最后在一篇博客中旁滑得到灵感—–点击可以看看。
这篇文章中没有告诉怎么将反射值去定义一个变量,但看完之后思考一下,既然要返回一个类型,但是类型又是不确定的,若存在这样一个返回变量的函数,则其返回类型必是Interface,在官网文档里找返回类型是Interface的函数,就是它了,它是Value类型的一个函数,所以就不能使用reflect.TypeOf(i interface{})来运仔腊操作了,就只能用reflect.ValueOf().于是慢慢结合上诉博客加文档,get~
package main
import (
"reflect"
"fmt"
)
func main() {
v2 := "tangs"
fmt.Println("v2's value is : ", v2, ", type is : ", reflect.TypeOf(v2))
ty := reflect.ValueOf(v2).Elem()
s := ty.Interface()
s = "tangs"
fmt.Println("s's value is : ", s, ", type is : " ,reflect.TypeOf(s))
}
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图