golang 如何判断变量的类型

方法一

package main
 
import (
 "fmt"
)
 
func main() {
 
        v1 := "123456"
        v2 := 12
 
        fmt.Printf("v1 type:%T\n", v1)
        fmt.Printf("v2 type:%T\n", v2)
}

output:

v1 type:string 
v2 type:int

方法二

package main
 
import (
 "fmt"
 "reflect"
)
 
func main() {
        v1 := "123456"
        v2 := 12
 
        // reflect
        fmt.Println("v1 type:", reflect.TypeOf(v1))
        fmt.Println("v2 type:", reflect.TypeOf(v2))
}
 

output:

 v1 type:string 
v2 type:int