Go语言怎么拼接字符串
Go 语言 拼接 字符串 有五种方法,分别是:使用 号拼接、使用 sprintf 拼接、使用 join 函数 拼接、使用 buffer.WriteString 函数拼接、使用 buffer.Builder 拼接。
方法1:使用
号拼接
str = str1 str2
-
使用 可以实现字符串的拼接,使用 号拼接字符串的前提是要拼接的必须全是字符串类型。这里,我们使用加号,实现了将 str1 和 str2 拼接成了字符串 str。
示例:
package main
import (
"fmt"
)
func main() {
//使用 号形式,实现拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
strHaiCoder := str1 str2
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
-
首先,我们定义了一个字符串 变量,赋值为 “Hello,”,接着又定义了一个字符串变量,赋值为 “HaiCoder”。我们使用 号的形式,实现了把字符串 str1 和 字符串 str2 进行了拼接,并把拼接结果赋值给变量 strHaiCoder。
-
最后,我们使用 print() 函数,打印变量 strHaiCoder,发现输出了 “Hello,HaiCoder”,即我们通过 号实现了字符串的拼接。
方法2:使用 sprintf 拼接
str = fmt.Sprintf("%s%d%s", s1, i, s2)
-
使用 sprintf 拼接字符串,可以实现任意 数据类型 的拼接,这里,我们实现了将字符串 s1、整型 i 和字符串 s2 拼接在了一起。
示例:
package main
import (
"fmt"
)
func main() {
//使用 sprintf,实现拼接字符串和数字
str1 := "Hello,"
str2 := "HaiCoder"
strHaiCoder := fmt.Sprintf("%s %d %s", str1, 1024, str2)
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
-
首先,我们定义了一个字符串变量,赋值为 “Hello,”,接着又定义了一个字符串变量,赋值为 “HaiCoder”。
-
我们使用 fmt.Sprintf,实现了把字符串 str1,数字 1024 和 字符串 str2 进行了拼接,并把拼接结果赋值给变量 strHaiCoder。
-
最后,我们使用 print() 函数,打印变量 strHaiCoder,发现输出了 “Hello, 1024 HaiCoder”,即我们通过 fmt.Sprintf 实现了字符串的拼接。
方法3:使用 join 函数 拼接
var str []string = []string{s1, s2}
s := strings.Join(str, "")
-
使用 Join 拼接字符串,实际上是将字符串数组连接起来,这里,我们实现了将字符串数组 str 里面的所有元素拼接在了一起。
示例:
package main
import (
"fmt"
"strings"
)
func main() {
//使用 join 函数,实现拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
var str = []string{str1, str2}
strHaiCoder := strings.Join(str, "")
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
-
首先,我们定义了一个字符串 变量,赋值为 “Hello,”,接着又定义了一个字符串变量,赋值为 “HaiCoder”。
-
接着,我们使用变量 str1 和变量 str2 定义一个字符串数组,最后,我们使用 strings.Join,实现了把字符串 str1 和 字符串 str2 进行了拼接,并把拼接结果赋值给变量 strHaiCoder。
-
最后,我们使用 print() 函数,打印变量 strHaiCoder,发现输出了 “Hello,HaiCoder”,即我们通过 strings.Join 实现了字符串的拼接。
方法4:使用 buffer.WriteString 函数拼接
var bt bytes.Buffer
bt.WriteString(s1)
bt.WriteString(s2)
//获得拼接后的字符串
s3 := bt.String()
-
使用 buffer.WriteString 拼接字符串的性能要远远大于上面的几种方式,因此不建议使用,这里,我们实现了拼接了字符串 s1 和 s2,拼接后赋值给字符串 s3。
示例:
package main
import (
"bytes"
"fmt"
)
func main() {
//使用 buffer.WriteString 函数拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
var bt bytes.Buffer
bt.WriteString(str1)
bt.WriteString(str2)
strHaiCoder := bt.String()
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
-
首先,我们定义了一个字符串变量,赋值为 “Hello,”,定义了另一个字符串变量,赋值为 “HaiCoder”,接着又定义了一个 bytes.Buffer 类型的变量 bt。
-
我们使用 bytes.Buffer 的 WriteString 方法,将变量 str1 和变量 str2 写入 bt 变量,最后,我们使用 bytes.Buffer 的 String 方法,实现了把字符串 str1 和 字符串 str2 进行了拼接,并把拼接结果赋值给变量 strHaiCoder。
方法5:使用 buffer.Builder 拼接
var build strings.Builder
build.WriteString(s1)
build.WriteString(s2)
s3 := build.String()
-
这是官方推荐使用的字符串拼接方法,这里,我们实现了拼接了字符串 s1 和 s2,拼接后赋值给字符串 s3。
示例:
package main
import (
"fmt"
"strings"
)
func main() {
//使用 buffer.Builder 函数拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
var build strings.Builder
build.WriteString(str1)
build.WriteString(str2)
strHaiCoder := build.String()
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
-
首先,我们定义了一个字符串变量,赋值为 “Hello,”,定义了另一个字符串变量,赋值为 “HaiCoder”,接着又定义了一个 strings.Builder 类型的变量 build。
-
我们使用 strings.Builder 的 WriteString 方法,将变量 str1 和变量 str2 写入 build 变量,最后,我们使用 strings.Builder 的 String 方法,实现了把字符串 str1 和 字符串 str2 进行了拼接,并把拼接结果赋值给变量 strHaiCoder。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanfecke
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
photoshop蒙版画笔没反应怎么办
PHP中文网 06-24