如何在Go中找到对象的类型?在Python中,我只是typeof用来获取对象的类型。类似地,在Go中,是否有实现相同方法的方法?
typeof
这是我要迭代的容器:
for e := dlist.Front(); e != nil; e = e.Next() { lines := e.Value fmt.Printf(reflect.TypeOf(lines)) }
在这种情况下,我无法获取对象行的类型,这是字符串数组。
Go反射包提供了检查变量类型的方法。
以下代码段将打印出字符串,整数和浮点数的反射类型。
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)) }
输出:
Hello, playground string int float64
请参阅:http : //play.golang.org/p/XQMcUVsOja以查看实际效果。
此处提供更多文档:http : //golang.org/pkg/reflect/#Type