数据类型
数据结构
值得一提的是,interface{}
可以表示为任意的接口,譬如表示任意类型的多重数组:
simpleCase := [][]interface{}{
[]interface{}{1, 2},
[]interface{}{3, 4},
}
类型别名
type (
subscriber chan interface{} // 订阅者为一个管道
topicFunc func(v interface{}) bool // 主题为一个过滤器
)
类型断言
类型断言接受一个接口值,并从中提取指定的明确类型的值。
value.(typeName)
而其结果则是拥有静态类型
str := value.(string)
如果断言失败,会
str, ok := value.(string)
如果断言失败,
类型转换
func (s Sequence) String() string {
sort.Sort(s)
return fmt.Sprint([]int(s))
}
该方法是通过类型转换技术,在