在golang中空的interface即interface{}可以看作任意类型, 即C中的void *.
对interface{}进行类型测试有2种语法:
1. Comma-ok断言:
value, ok = element.(T),
其中T是具体类型.
2. Switch测试:
switch element.(type) {
case T1:
case T2:
default:
}
其中T1, T2是具体类型.
注意: element.(type)语法不能在switch外的任何逻辑里使用. 在switch外必须使用comma-ok断言或者反射:
reflect.TypeOf(element)
reflect.ValueOf(element)
查看原文:http://www.zoues.com/2016/10/20/golanginterface%e7%b1%bb%e5%9e%8b%e6%b5%8b%e8%af%95/
golang:interface{}类型测试
最新推荐文章于 2025-01-12 10:55:24 发布