您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“Go語(yǔ)言如何拼接字符串”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“Go語(yǔ)言如何拼接字符串”吧!
拼接字符串的方法:1、使用“+”號(hào)拼接,語(yǔ)法“str = str1 + str2”;2、利用fmt包的sprintf()函數(shù)拼接,語(yǔ)法“str = fmt.Sprintf("%s%d%s", s1, i, s2)”;3、使用join函數(shù)拼接;4、利用buffer包的WriteString()函數(shù)拼接;5、利用buffer包的Builder()函數(shù)拼接。
Go 語(yǔ)言 拼接 字符串 有五種方法,分別是:使用+號(hào)拼接、使用 sprintf 拼接、使用 join 函數(shù) 拼接、使用 buffer.WriteString 函數(shù)拼接、使用 buffer.Builder 拼接。
方法1:使用 +
號(hào)拼接
str = str1 + str2
使用 + 可以實(shí)現(xiàn)字符串的拼接,使用 + 號(hào)拼接字符串的前提是要拼接的必須全是字符串類型。這里,我們使用加號(hào),實(shí)現(xiàn)了將 str1 和 str2 拼接成了字符串 str。
示例:
package main
import (
"fmt"
)
func main() {
//使用+號(hào)形式,實(shí)現(xiàn)拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
strHaiCoder := str1 + str2
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
首先,我們定義了一個(gè)字符串 變量,賦值為 “Hello,”,接著又定義了一個(gè)字符串變量,賦值為 “HaiCoder”。我們使用 + 號(hào)的形式,實(shí)現(xiàn)了把字符串 str1 和 字符串 str2 進(jìn)行了拼接,并把拼接結(jié)果賦值給變量 strHaiCoder。
最后,我們使用 print() 函數(shù),打印變量 strHaiCoder,發(fā)現(xiàn)輸出了 “Hello,HaiCoder”,即我們通過(guò) + 號(hào)實(shí)現(xiàn)了字符串的拼接。
方法2:使用 sprintf 拼接
str = fmt.Sprintf("%s%d%s", s1, i, s2)
使用 sprintf 拼接字符串,可以實(shí)現(xiàn)任意 數(shù)據(jù)類型 的拼接,這里,我們實(shí)現(xiàn)了將字符串 s1、整型 i 和字符串 s2 拼接在了一起。
示例:
package main
import (
"fmt"
)
func main() {
//使用 sprintf,實(shí)現(xiàn)拼接字符串和數(shù)字
str1 := "Hello,"
str2 := "HaiCoder"
strHaiCoder := fmt.Sprintf("%s %d %s", str1, 1024, str2)
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
首先,我們定義了一個(gè)字符串變量,賦值為 “Hello,”,接著又定義了一個(gè)字符串變量,賦值為 “HaiCoder”。
我們使用 fmt.Sprintf,實(shí)現(xiàn)了把字符串 str1,數(shù)字 1024 和 字符串 str2 進(jìn)行了拼接,并把拼接結(jié)果賦值給變量 strHaiCoder。
最后,我們使用 print() 函數(shù),打印變量 strHaiCoder,發(fā)現(xiàn)輸出了 “Hello, 1024 HaiCoder”,即我們通過(guò) fmt.Sprintf 實(shí)現(xiàn)了字符串的拼接。
方法3:使用 join 函數(shù) 拼接
var str []string = []string{s1, s2}
s := strings.Join(str, "")
使用 Join 拼接字符串,實(shí)際上是將字符串?dāng)?shù)組連接起來(lái),這里,我們實(shí)現(xiàn)了將字符串?dāng)?shù)組 str 里面的所有元素拼接在了一起。
示例:
package main
import (
"fmt"
"strings"
)
func main() {
//使用 join 函數(shù),實(shí)現(xiàn)拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
var str = []string{str1, str2}
strHaiCoder := strings.Join(str, "")
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
首先,我們定義了一個(gè)字符串 變量,賦值為 “Hello,”,接著又定義了一個(gè)字符串變量,賦值為 “HaiCoder”。
接著,我們使用變量 str1 和變量 str2 定義一個(gè)字符串?dāng)?shù)組,最后,我們使用 strings.Join,實(shí)現(xiàn)了把字符串 str1 和 字符串 str2 進(jìn)行了拼接,并把拼接結(jié)果賦值給變量 strHaiCoder。
最后,我們使用 print() 函數(shù),打印變量 strHaiCoder,發(fā)現(xiàn)輸出了 “Hello,HaiCoder”,即我們通過(guò) strings.Join 實(shí)現(xiàn)了字符串的拼接。
方法4:使用 buffer.WriteString 函數(shù)拼接
var bt bytes.Buffer
bt.WriteString(s1)
bt.WriteString(s2)
//獲得拼接后的字符串
s3 := bt.String()
使用 buffer.WriteString 拼接字符串的性能要遠(yuǎn)遠(yuǎn)大于上面的幾種方式,因此不建議使用,這里,我們實(shí)現(xiàn)了拼接了字符串 s1 和 s2,拼接后賦值給字符串 s3。
示例:
package main
import (
"bytes"
"fmt"
)
func main() {
//使用 buffer.WriteString 函數(shù)拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
var bt bytes.Buffer
bt.WriteString(str1)
bt.WriteString(str2)
strHaiCoder := bt.String()
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
首先,我們定義了一個(gè)字符串變量,賦值為 “Hello,”,定義了另一個(gè)字符串變量,賦值為 “HaiCoder”,接著又定義了一個(gè) bytes.Buffer 類型的變量 bt。
我們使用 bytes.Buffer 的 WriteString 方法,將變量 str1 和變量 str2 寫入 bt 變量,最后,我們使用 bytes.Buffer 的 String 方法,實(shí)現(xiàn)了把字符串 str1 和 字符串 str2 進(jìn)行了拼接,并把拼接結(jié)果賦值給變量 strHaiCoder。
方法5:使用 buffer.Builder 拼接
var build strings.Builder
build.WriteString(s1)
build.WriteString(s2)
s3 := build.String()
這是官方推薦使用的字符串拼接方法,這里,我們實(shí)現(xiàn)了拼接了字符串 s1 和 s2,拼接后賦值給字符串 s3。
示例:
package main
import (
"fmt"
"strings"
)
func main() {
//使用 buffer.Builder 函數(shù)拼接字符串
str1 := "Hello,"
str2 := "HaiCoder"
var build strings.Builder
build.WriteString(str1)
build.WriteString(str2)
strHaiCoder := build.String()
fmt.Println("strHaiCoder =", strHaiCoder)
}
分析:
首先,我們定義了一個(gè)字符串變量,賦值為 “Hello,”,定義了另一個(gè)字符串變量,賦值為 “HaiCoder”,接著又定義了一個(gè) strings.Builder 類型的變量 build。
我們使用 strings.Builder 的 WriteString 方法,將變量 str1 和變量 str2 寫入 build 變量,最后,我們使用 strings.Builder 的 String 方法,實(shí)現(xiàn)了把字符串 str1 和 字符串 str2 進(jìn)行了拼接,并把拼接結(jié)果賦值給變量 strHaiCoder。
到此,相信大家對(duì)“Go語(yǔ)言如何拼接字符串”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。