我发现以下Golang语言代码
item.(Tweet)
我已经知道每个变量都有一个方法。但是我不知道上面的代码。有人知道吗?
答案 0 :(得分:4)
类型断言提供对接口值的基础具体值的访问。
示例:
var num interface{} = 5
var numActual int = num.(int)
fmt.Println(numActual)
在上面的代码中,num
是类型为interface{}
的变量。它可以保存任何类型的值,但是在上面的示例中,它存储着一个数字整数数据5
。
要从num
获取基础的具体值,只需在变量末尾添加.(type)
。
num.(int)
通过检查语句的第二个返回值,可以检查interface{}
变量是否可转换为某些类型。示例:
if actual, ok := num.(string); ok {
fmt.Println("num is not string")
fmt.Println("it's a number data with value is", actual)
}