一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

golang中[]string转[]interface{}实现

时间:2016-08-02 编辑:简简单单 来源:一聚教程网


在golang语法中,不应该隐藏复杂的类型操作。
如string转interface{},[]string转interface{}都是时间复杂度O(1)的操作。而[]string转[]interface{}是O(n)的操作。

注:string和[]byte除外,这是特例。
因此[]T 转 []interface{}只能自己去实现:

 strSls := []string{
  "test1",
  "test2",
 }
 
 //[]interface{}(strSls)
 //cannot convert strSls (type []string) to type []interface {}
 
 newSls := make([]interface{}, len(strSls))
 for i, v := range strSls {
  newSls[i] = v
 }
 
 fmt.Println(newSls)

热门栏目