go 断言
Go 断言
golang的语言中提供了断言的功能。golang中的所有程序都实现了interface{}的接口,这意味着,所有的类型如string,int,int64甚至是自定义的struct类型都就此拥有了interface{}的接口。那么在一个数据通过func funcName(interface{})的方式传进来的时候,也就意味着这个参数被自动的转为interface{}的类型。
断言用法
func Attach(i interface{}) {
if t, ok := i.(string); ok { //这里断言
fmt.Println(t)
}
}
func main(){
Attach("http")
}