知识分享之Golang——golang中快速获取变量类型
背景
知识分享之Golang篇是我在日常使用Golang时学习到的各种各样的知识的记录,将其整理出来以文章的形式分享给大家,来进行共同学习。欢迎大家进行持续关注。
知识分享系列目前包含Java、Golang、Linux、Docker等等。
开发环境
- 系统:windows10
- 语言:Golang
- 组件库:Bleve
- golang版本:1.18
- 组件官网:https://gorm.io/
- 组件仓库:gorm
- 开源协议:MIT License
内容
在日常开发过程中,我们有时使用到interface类型作为一些返回值的接收或传参,一些业务需要判断其具体的类型进行不同处理,这时我们就需要使用到快速获取变量类型的函数了,下面是其golang内部库中的相关函数,在此进行分享给大家。
func main() {
tt := "测试数据"
fmt.Println("type:", reflect.TypeOf(tt))
fmt.Println("type Name:", reflect.TypeOf(tt).Name())
fmt.Println("type String:", reflect.TypeOf(tt).String())
fmt.Println("type Size:", reflect.TypeOf(tt).Size())
}
// 打印内容
type: string
type Name: string
type String: string
type Size: 16
当然,在reflect.TypeOf(tt)后面还有一系列日常使用的函数,例如.Name()、.String()、.Size()... 大家可以灵活根据自己的业务需求进行快速使用。
本文声明:
知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。