小编典典

如何在Go中找到对象的类型?

go

如何在Go中找到对象的类型?在Python中,我只是typeof用来获取对象的类型。类似地,在Go中,是否有实现相同方法的方法?

这是我要迭代的容器:

for e := dlist.Front(); e != nil; e = e.Next() {
    lines := e.Value
    fmt.Printf(reflect.TypeOf(lines))
}

在这种情况下,我无法获取对象行的类型,这是字符串数组。


阅读 268

收藏
2020-07-02

共1个答案

小编典典

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

2020-07-02