golang中常用的空接口转换方法
空接口的新关键词
1.18版本之后,any即可表示空接口
常用使用方法
配合if的用法
var x any
x ="123"
v,ok:= x.(string)
// v是string类型,ok是bool类型
if ok{
fmt.Println(v)
}
配合switch使用
var value any
value = 1
switch v := value.(type) {
case int:
{
// 当value可转换为int时
fmt.Println(v+1)
}
case string:
{
// 当value可转换为string时
fmt.Println(v)
}
}
value = "1"
switch v := value.(type) {
case int:
{
fmt.Println(v+1)
}
case string:
{
fmt.Println(v)
}
}
}