Go语言拼接字符串

Go语言拼接字符串教程

Go 语言 拼接 字符串 有五种方法,分别是:使用+号拼接、使用 sprintf 拼接、使用 join 函数 拼接、使用 buffer.WriteString 函数拼接、使用 buffer.Builder 拼接。

Go语言拼接字符串详解

使用 + 号

语法

str = str1 + str2

说明

使用 + 可以实现字符串的拼接,使用 + 号拼接字符串的前提是要拼接的必须全是字符串类型。这里,我们使用加号,实现了将 str1 和 str2 拼接成了字符串 str。

使用sprintf拼接

语法

str = fmt.Sprintf("%s%d%s", s1, i, s2)

说明

使用 sprintf 拼接字符串,可以实现任意 数据类型 的拼接,这里,我们实现了将字符串 s1、整型 i 和字符串 s2 拼接在了一起。

使用join函数拼接

语法

var str []string = []string{s1, s2} s := strings.Join(str, "")

说明

使用 Join 拼接字符串,实际上是将字符串数组连接起来,这里,我们实现了将字符串数组 str 里面的所有元素拼接在了一起。

使用buffer.WriteString函数拼接

语法

var bt bytes.Buffer bt.WriteString(s1) bt.WriteString(s2) //获得拼接后的字符串 s3 := bt.String()

说明

使用 buffer.WriteString 拼接字符串的性能要远远大于上面的几种方式,因此不建议使用,这里,我们实现了拼接了字符串 s1 和 s2,拼接后赋值给字符串 s3。

使用buffer.Builder拼接

语法

var build strings.Builder build.WriteString(s1) build.WriteString(s2) s3 := build.String()

说明

这是官方推荐使用的字符串拼接方法,这里,我们实现了拼接了字符串 s1 和 s2,拼接后赋值给字符串 s3。

案例

加号拼接字符串

使用+号形式,实现拼接字符串

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //使用+号形式,实现拼接字符串 str1 := "Hello," str2 := "HaiCoder" strHaiCoder := str1 + str2 fmt.Println("strHaiCoder =", strHaiCoder) }

程序运行后,控制台输出如下:

05 golang字符串拼接.png

首先,我们定义了一个字符串 变量,赋值为 “Hello,”,接着又定义了一个字符串变量,赋值为 “HaiCoder”。我们使用 + 号的形式,实现了把字符串 str1 和 字符串 str2 进行了拼接,并把拼接结果赋值给变量 strHaiCoder。

最后,我们使用 print() 函数,打印变量 strHaiCoder,发现输出了 “Hello,HaiCoder”,即我们通过 + 号实现了字符串的拼接。

使用sprintf拼接

使用 sprintf,实现拼接字符串和数字

package main import ( "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //使用 sprintf,实现拼接字符串和数字 str1 := "Hello," str2 := "HaiCoder" strHaiCoder := fmt.Sprintf("%s %d %s", str1, 1024, str2) fmt.Println("strHaiCoder =", strHaiCoder) }

程序运行后,控制台输出如下:

06 golang字符串拼接.png

首先,我们定义了一个字符串变量,赋值为 “Hello,”,接着又定义了一个字符串变量,赋值为 “HaiCoder”。

我们使用 fmt.Sprintf,实现了把字符串 str1,数字 1024 和 字符串 str2 进行了拼接,并把拼接结果赋值给变量 strHaiCoder。

最后,我们使用 print() 函数,打印变量 strHaiCoder,发现输出了 “Hello, 1024 HaiCoder”,即我们通过 fmt.Sprintf 实现了字符串的拼接。

Go语言拼接字符串总结

Go 语言拼接字符串有五种方法,分别是:使用+号拼接、使用 sprintf 拼接、使用 join 函数拼接、使用 buffer.WriteString 函数拼接、使用 buffer.Builder 拼接。使用 + 号拼接语法:

str = str1+str2

使用 sprintf 拼接语法:

str = fmt.Sprintf("%s%d%s", s1, i, s2)