有个时候不确定数据类型是什么,我们就会使用 interface{}
定义,但是当赋值后读取的时候有点麻烦,不能直接读取interface{}
里面的数据,用下面方法来判定之后即可读取了
//空接口接受任何数据
i := make(map[string]interface{})
i["slice"] = []string{"1","2"}
i["array"] = [3]int{}
//读取slice内容
if slice,ok := i["slice"].([]string); ok {
fmt.Printf("%#v", slice)
}
if array,ok := i["slice"].([3]int); ok {
fmt.Printf("%#v", array)
}