在 Go 语言中,可以使用类型断言来从 'interface{}' 类型中获取数据。类型断言的语法如下:

value, ok := interfaceValue.(Type)

其中,'interfaceValue' 是 'interface{}' 类型的变量,'Type' 是要转换的目标类型。如果 'interfaceValue' 可以转换为 'Type' 类型,那么 'value' 将会是转换后的值,'ok' 将会是 'true';否则,'value' 将会是 'Type' 类型的零值,'ok' 将会是 'false'。

例如,假设有一个 'interface{}' 类型的变量 'i',我们可以使用以下代码从中获取一个 'int' 类型的值:

i := interfaceValue
if value, ok := i.(int); ok {
    fmt.Println('i is an int:', value)
} else {
    fmt.Println('i is not an int')
}

如果 'i' 是一个 'int' 类型的值,那么上面的代码会输出 'i is an int:' 和这个值;否则,会输出 'i is not an int'。

Go interface{} 类型数据获取方法 - 类型断言

原文地址: https://www.cveoy.top/t/topic/lr2u 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录