golang将"type [] string"转换为字符串

use*_*307 33 string types string-concatenation go

我确信这是一个简单的问题,但我一直在讨论这个问题.我看到其他人也是如此.

我看到有些人创建一个for循环并在切片中运行以创建一个字符串,是否有更简单的方法将其转换[]stringstring

sprintf这样吗?

Tom*_*ner 52

您可以使用strings.Join(arr []string, seperator string) string,就像我所知道的几乎任何其他语言一样

https://golang.org/pkg/strings/#Join


Hub*_*rtS 21

这是一个简单的例子,你可以粘贴到main函数:

  stringArray := []string {"Hello","world","!"}
  justString := strings.Join(stringArray," ")
  fmt.Println(justString)
Run Code Online (Sandbox Code Playgroud)

并链接到操场上的工作示例.

或者使用非常简单的功能 简单的功能


Som*_* S. 6

Sprint做的?

确实是的!

如果您只关心它是一个字符串而不是它的具体外观,那么这是另一种转换为字符串的方法(请参阅上面的答案以获得strings.Join更多灵活性)。

此方法(或诸如 之类的变体)的优点Sprintf是它可以与(几乎)所有其他数据一起使用,例如mapsstructs以及实现接口的任何自定义类型fmt.Stringer

  stringArray := []string {"Hello","world","!"}
  justString := fmt.Sprint(stringArray)
Run Code Online (Sandbox Code Playgroud)

这是一个工作示例的链接。