如何将一段字符串连接成一个字符串?
How to join a slice of strings into a single string?
package main
import (
"fmt"
"strings"
)
func main() {
reg := [...]string {"a","b","c"}
fmt.Println(strings.Join(reg,","))
}
给我一个错误:
prog.go:10: cannot use reg (type [3]string) as type []string in argument to strings.Join
有没有比循环并添加到 var 更 direct/better 的方法?
使用切片,而不是数组。只需使用
创建它
reg := []string {"a","b","c"}
另一种方法是在加入时将数组转换为切片:
fmt.Println(strings.Join(reg[:],","))
阅读the Go blog about the differences between slices and arrays。
你的问题标题是:
How to join a slice of strings into a single string?
但实际上,reg
不是一个切片,而是一个length-three数组。 [...]string
只是(在本例中)[3]string
.
的语法糖
要获得实际切片,您应该这样写:
reg := []string {"a","b","c"}
(试试看:https://play.golang.org/p/vqU5VtDilJ。)
顺便说一句,如果您真的需要将一个字符串数组连接成一个字符串,您可以通过添加 [:]
从数组中获取一个切片,如下所示:
fmt.Println(strings.Join(reg[:], ","))
这在 2018 年仍然适用。
到字符串
import strings
stringFiles := strings.Join(fileSlice[:], ",")
再次返回切片
import strings
fileSlice := strings.Split(stringFiles, ",")
package main
import (
"fmt"
"strings"
)
func main() {
reg := [...]string {"a","b","c"}
fmt.Println(strings.Join(reg,","))
}
给我一个错误:
prog.go:10: cannot use reg (type [3]string) as type []string in argument to strings.Join
有没有比循环并添加到 var 更 direct/better 的方法?
使用切片,而不是数组。只需使用
创建它reg := []string {"a","b","c"}
另一种方法是在加入时将数组转换为切片:
fmt.Println(strings.Join(reg[:],","))
阅读the Go blog about the differences between slices and arrays。
你的问题标题是:
How to join a slice of strings into a single string?
但实际上,reg
不是一个切片,而是一个length-three数组。 [...]string
只是(在本例中)[3]string
.
要获得实际切片,您应该这样写:
reg := []string {"a","b","c"}
(试试看:https://play.golang.org/p/vqU5VtDilJ。)
顺便说一句,如果您真的需要将一个字符串数组连接成一个字符串,您可以通过添加 [:]
从数组中获取一个切片,如下所示:
fmt.Println(strings.Join(reg[:], ","))
这在 2018 年仍然适用。
到字符串
import strings
stringFiles := strings.Join(fileSlice[:], ",")
再次返回切片
import strings
fileSlice := strings.Split(stringFiles, ",")