SliceOf
函数体
func SliceOf(t Type) Type
第一次看完这里的案例还是没有看懂这个SliceOf是怎么用的;
自己动手
package main
import(
"fmt"
"reflect"
)
type CMS struct {
name string
age int
}
func main() {
objs := []interface{}{
1,
1.2,
"abc",
CMS {
name: "ming",
age: 18,
},
&CMS {
name: "ming2",
age: 18,
},
}
for _, obj := range objs {
ot := reflect.TypeOf(obj)
fmt.Println(reflect.SliceOf(ot))
}
return
}
运行结果
[]int
[]float64
[]string
[]main.CMS
[]*main.CMS
根据数学归纳法总结
说明了reflect.SliceOf接口,其实就是通过输入切片内容elem的Type,给你封装好返回一个以elem为内容项的切片类型Type
进一步运用
可以通过该Type生成切片的实例
结合一下的接口进行运用
package reflect
func New(typ Type) Value
func (v Value) Interface() (i interface{})
希望大家喜欢并支持
以上原创,希望大家转载的话说明出处,谢谢;