目录
go语言,拼接字符串的方式有好几种,这里我整理了以下:
- package main
-
- import "fmt"
-
- func main() {
- // Q:拼接字符串有哪些方式
- // A:使用加号"+",使用加号来连接两个或多个字符串是最直接的方式
- s1 := "Hello,"
- s2 := "World!"
- s3 := s1 + s2
- fmt.Println(s3) //输出:Hello,World!
- }
fmt.Sprintf- package main
-
- import "fmt"
-
- func main() {
- // Q:拼接字符串有哪些方式
- // A:使用fmt.Sprintf,当需要格式化字符串时,fmt.Sprintf是一个很好的选择。它返回一个格式化后的字符串
- name := "Lucky"
- greeting := fmt.Sprintf("Hello,%s!", name)
- fmt.Println(greeting) // 输出:Hello,Lucky!
- }
strings.Join- package main
-
- import (
- "fmt"
- "strings"
- )
-
- func main() {
- // Q:拼接字符串有哪些方式
- // A:使用strings.Join,当需要连接一个字符串切片(slice)时,可以使用strings.Join函数
- parts := []string{"Hello", "World"}
- s := strings.Join(parts, ",")
- fmt.Println(s) // 输出:Hello,World
- }
strings.Builder- package main
-
- import (
- "fmt"
- "strings"
- )
-
- func main() {
- // Q:拼接字符串有哪些方式
- // A:使用strings.Builder,对于大量字符串的拼接操作,使用strings.Builder可以提供更好的性能,因为它避免了不必要的内存分配和复制
- var b strings.Builder
- b.WriteString("Hello,")
- b.WriteString("World!")
- s := b.String()
- fmt.Println(s) // 输出:Hello,World!
- }
bytes.Buffer- package main
-
- import (
- "bytes"
- "fmt"
- )
-
- func main() {
- // Q:拼接字符串有哪些方式
- // A:使用bytes.Buffer,与strings.Builder类似,但bytes.Buffer用于字节的拼接,然后可以通过String()方法转换为字符串。这在处理字节切片时更为常见
- var b bytes.Buffer
- b.WriteString("Hello,")
- b.WriteString("World!")
- s := b.String()
- fmt.Println(s) // 输出:Hello,World!
- }