如何将切片joinstring?
package main import ( "fmt" "strings" ) func main() { reg := [...]string {"a","b","c"} fmt.Println(strings.Join(reg,",")) }
给我一个错误:
prog.go:10:不能使用reg(type [3] string)作为参数的types[] string到strings.Join
有没有比循环和添加到一个更直接/更好的方法?
你的问题的标题是:
golang,试图将一个切片join到一个string中
但实际上, reg
不是一个分片,而是一个三长的数组。 [...]string
只是(在这种情况下) [3]string
语法糖。
要得到一个实际的切片,你应该写:
reg := []string {"a","b","c"}
(试试看: http : //play.golang.org/p/vqU5VtDilJ 。)
使用一个切片,而不是一个arrray。 只需使用它来创build它
reg := []string {"a","b","c"}
另一种方法是在连接时将数组转换为片段:
fmt.Println(strings.Join(reg[:],","))
阅读Go博客,了解切片和arrays之间的区别 。