How to find the type of an object in Go?

前端 未结 14 1138
余生分开走
余生分开走 2020-12-12 09:16

How do I find the type of an object in Go? In Python, I just use typeof to fetch the type of object. Similarly in Go, is there a way to implement the same ?

14条回答
  •  庸人自扰
    2020-12-12 09:32

    The Go reflection package has methods for inspecting the type of variables.

    The following snippet will print out the reflection type of a string, integer and float.

    package main
    
    import (
        "fmt"
        "reflect"
    )
    
    func main() {
    
        tst := "string"
        tst2 := 10
        tst3 := 1.2
    
        fmt.Println(reflect.TypeOf(tst))
        fmt.Println(reflect.TypeOf(tst2))
        fmt.Println(reflect.TypeOf(tst3))
    
    }
    

    Output:

    Hello, playground
    string
    int
    float64
    

    see: http://play.golang.org/p/XQMcUVsOja to view it in action.

    More documentation here: http://golang.org/pkg/reflect/#Type

提交回复
热议问题