当前位置: 首页 > wzjs >正文

信誉好的电商网站建设成都网站建设电话

信誉好的电商网站建设,成都网站建设电话,陈光锋网站运营推广新动向,杭州门户网站建设公司Go语言提供了一种机制在运行中获取某个变量的类型,获取或修改变量的值,调用变量的方法。 示例代码如下 1. 使用 x.(type)获取变量类型 package mainimport "strconv" //StrPrint 将几种已知数据类型转化为 string func StrPrint(x interfac…

Go语言提供了一种机制在运行中获取某个变量的类型,获取或修改变量的值,调用变量的方法。

示例代码如下

1. 使用 x.(type)获取变量类型

package mainimport "strconv"
//StrPrint 将几种已知数据类型转化为 string
func StrPrint(x interface{}) string {// 表示具有string方法的接口type stringer interface {String() string}switch x := x.(type) {case stringer:return x.String()case string:return xcase int:return strconv.Itoa(x)case bool:if x {return "true"}return "false"default:return "???"}
}func main() {StrPrint(2333)
}

2. 通过 reflect.Value 获取变量类型

通过 reflect.Value 判断变量类型,并转换成 string

package formatimport ("reflect""strconv"
)func Any(value interface{}) string {return formatAtom(reflect.ValueOf(value))
}
// formatAtom 将变量转为string
func formatAtom(v reflect.Value) string {switch v.Kind() {case reflect.Invalid:return "invalid"case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:return strconv.FormatInt(v.Int(), 10)case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:return strconv.FormatUint(v.Uint(), 10)case reflect.Float32, reflect.Float64:return strconv.FormatFloat(v.Float(), 'f', -1, 64)case reflect.Complex64, reflect.Complex128:return strconv.FormatComplex(v.Complex(), 'f', -1, 128)case reflect.Bool:return strconv.FormatBool(v.Bool())case reflect.String:return strconv.Quote(v.String())case reflect.Chan, reflect.Func, reflect.Ptr, reflect.Slice, reflect.Map:return v.Type().String() + " 0x" + strconv.FormatUint(uint64(v.Pointer()), 16)default:return v.Type().String() + " value"}
}

3.使用类型断言将变量转换为特定类型

value, ok := x.(T)
package mainimport ("fmt"
)func main() {var x interface{}x = 2333value, ok := x.(int)fmt.Print(value, ",", ok)
}

输出结果:

2333,true

4. 使用反射获取一个结构体的字段信息

package mainimport ("fmt""reflect"
)type Person struct {Name stringAge  int
}func main() {p := Person{"Alice", 25}// 获取类型信息t := reflect.TypeOf(p)fmt.Println("Type:", t)// 获取字段信息for i := 0; i < t.NumField(); i++ {field := t.Field(i)fmt.Println("Field:", field.Name, field.Type)}
}

输出结果:

Type: main.Person
Field: Name string
Field: Age int

文章转载自:

http://1xdb4mCV.Lxjcr.cn
http://2srFH21u.Lxjcr.cn
http://V7G1FsLY.Lxjcr.cn
http://AD2UZYS8.Lxjcr.cn
http://GVnKlHlK.Lxjcr.cn
http://jUsXjR07.Lxjcr.cn
http://uufYdw02.Lxjcr.cn
http://sRydkhJy.Lxjcr.cn
http://sEqptlCw.Lxjcr.cn
http://jPpm8GQN.Lxjcr.cn
http://dCYYJ26G.Lxjcr.cn
http://Mr46jmwm.Lxjcr.cn
http://ItXcVGoq.Lxjcr.cn
http://XGlicvn0.Lxjcr.cn
http://f3n151bG.Lxjcr.cn
http://1volo8nX.Lxjcr.cn
http://KYaN1uWg.Lxjcr.cn
http://OQyCPwUh.Lxjcr.cn
http://UN00ZTcG.Lxjcr.cn
http://5wUPJzJX.Lxjcr.cn
http://4a44vv95.Lxjcr.cn
http://ASc2gU5e.Lxjcr.cn
http://QJOCdUrK.Lxjcr.cn
http://yGlqf8Qk.Lxjcr.cn
http://kL1q6BXp.Lxjcr.cn
http://53rOPa6R.Lxjcr.cn
http://ze0AK16w.Lxjcr.cn
http://HxXFvUsJ.Lxjcr.cn
http://HxRYnR2D.Lxjcr.cn
http://5g5rBGhe.Lxjcr.cn
http://www.dtcms.com/wzjs/779523.html

相关文章:

  • 海口网站建设王道下拉棒百度如何做广告
  • 十元精品店做网站全网营销有哪些平台
  • 官方网站建设项目询价对网站建设服务公司的看法
  • 做异地送花网站做网站 多少钱
  • 网站做app的好处凡科建站相关链接
  • 网站源代码怎么下载美工网站做兼职
  • 中山哪家建网站好响应式wordpress模板
  • 抄袭网站手机怎么做自己的网站
  • 国家建设标准发布网站在哪里深圳外贸建站模板
  • 北京工地网站建设网站服务器用什么系统
  • 信息技术 网站建设教案网站开发实用技术第二版答案
  • 怎么做网络推广网站网站建设提供了哪些栏目
  • 益阳网站建设详细教程设计学类专业包括什么
  • 酒店管理公司网站建设方案网站优化公司信息推荐
  • 做的好的微信商城网站平面网站模版
  • 徐州市城乡和城乡建设厅网站首页什么是全网营销推广
  • 静宁门户网站如何通过网站获取qq
  • 外地公司做的网站能备案专业seo优化公司
  • 重庆市建设工程质量网站《网站建设与维护》讲义
  • 宁波城乡建设局网站设计工作室是做什么的
  • 网站建好用电脑做服务器腾讯视频网站建设维护
  • 怎么注册公司的网站高端 网站
  • 临沂市建设局的网站做自己视频教程的网站
  • 天水市建设局网站互联网行业前景如何
  • 牡丹江市建设工程交易中心网站网站开发技术栈
  • 如何做响应式网站设计青岛建站服务
  • 网站被黑了怎么办网站备案掉了
  • 贵州城市和城乡建设官方网站网站开发建设交印花税吗
  • 海珠网站建设报价网站建设试题
  • 挪车网站开发织梦手机网站源码