Golang interface{}的用法
我们都知道,Go里面的interface{}
是用于定义接口,但是它除了定义一组接口外,还可以作为一种类型使用,这类型可以是任意类型。
interface{}
这种任意类型,在我们实际业务处理过程,相当有用,如:
1 | package main |
最后会打印出
1 | Bob |
这里仅是一个简单的示例,平时在开发过程中,经常会用到map
类型,一般情况下,我们也会明确map
键值的具体类型,如果map[string]string
,但是有时候,我们又不太确定数据类型,则可以用到map[string]interface{}
或者map[interface{}]interface{}
等。来看个例子吧
1 | package main |
运行后,我们可以看到打印结果如下:
1 | key type: string |
可见interface{}
能装入各种类型。但是,不同类型在类型转换过程的效率会有高有低,我们要适当使用interface{}
Golang interface{}的用法