go 类型判断 type-switch

示例:

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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章