示例:
package main
import "fmt"
func main() {
b := "1234"
testTypeSwitch(b)
}
func testTypeSwitch(a interface{}) {
// a需要是interface类型,a原有的类型有可能是复杂的结构体,或者是map
// 不确定a的类型时,可以通过reflect.TypeOf(a) 来获取a原有的类型
// 此处示例仅是一些基础数据类型
switch a.(type) {
case string:
fmt.Println("string, a=", a)
case int:
fmt.Println("int, a=", a)
case bool:
fmt.Println("bool, a=", a)
}
}
输出结果:
string, a= 1234