面试题答案
一键面试package main
import (
"fmt"
)
func main() {
var i interface{} = 10
result, ok := i.(int)
if ok {
result++
fmt.Println(result)
} else {
fmt.Println("类型断言失败")
}
}
在上述代码中,通过类型断言 i.(int)
将 interface{}
类型转换为 int
类型,并判断转换是否成功。如果成功则进行加1操作并输出结果,若失败则输出提示信息。这里即使在泛型编程环境下,对于这种类型断言转换操作,基本方式是一致的,因为类型断言本身就是Go语言的基础特性,并非泛型独有的。