在go语言中,interface很好用,但是往往我们无法确定interface里存储的到底是什么类型,而且go又是强类型语言。type-switch就刚好帮我们解决了这个问题
//例子
var s interface{}
switch s.(type) {
case string:
fmt.println("这是一个string类型的变量")
case int64:
fmt.println("这是一个你int64类型的变量")
default:
fmt.println("以上类型都不是")
}
//另外如果只是单纯的想知道变量的类型,可以使用reflect.typeof()
val := "abcdefg123"
fmt.println(reflect.typeof(val)) //打印结果:string
beego.Debug(reflect.typeof(val)) //Debug打印结果:string