在Go语言中, 字符串是使用UTF-8编码编码的不可变的任意字节链。在Go字符串中, 将两个或多个字符串添加到新的单个字符串中的过程称为串联。连接Go语言中两个或多个字符串的最简单方法是使用+运算符。也称为串联运算符。
例子:
//Go program to illustrate
//how to concatenate strings
package mainimport "fmt"func main() {//Creating and initializing strings
//using var keyword
var str1 string
str1 = "Welcome!"var str2 string
str2 = "srcmini"//Concatenating strings
//Using + operator
fmt.Println( "New string 1: " , str1+str2)//Creating and initializing strings
//Using shorthand declaration
str3 := "Geeks"
str4 := "Geeks"//Concatenating strings
//Using + operator
result := str3 + "for" + str4fmt.Println( "New string 2: " , result)}
输出如下:
New string 1:Welcome!srcmini
New string 2:srcmini
连接字符串的其他方法 使用bytes.Buffer:你也可以通过使用bytes来连接字符串的字节来创建一个字符串。带有WriteString()方法的缓冲区。它在bytes包下定义。它防止生成不必要的字符串对象,这意味着它不会从两个或多个字符串生成一个新的字符串,就像in +操作符那样。
例子:
//Go program to illustrate how to concatenate strings
//Using bytes.Buffer with WriteString() function
package mainimport (
"bytes"
"fmt"
)func main() {//Creating and initializing strings
//Using bytes.Buffer with
//WriteString() function
var b bytes.Bufferb.WriteString( "G" )
b.WriteString( "e" )
b.WriteString( "e" )
b.WriteString( "k" )
b.WriteString( "s" )fmt.Println( "String: " , b.String())b.WriteString( "f" )
b.WriteString( "o" )
b.WriteString( "r" )
b.WriteString( "G" )
b.WriteString( "e" )
b.WriteString( "e" )
b.WriteString( "k" )
b.WriteString( "s" )fmt.Println( "String: " , b.String())}
输出如下:
String:Geeks
String:srcmini
使用Sprintf:在Go语言中,你也可以使用Sprintf()方法连接字符串。
例子:
//Go program to illustrate how to concatenate strings
//Using Sprintf function
package mainimport "fmt"func main() {//Creating and initializing strings
str1 := "Tutorial"
str2 := "of"
str3 := "Go"
str4 := "Language"//Concatenating strings using
//Sprintf() function
result := fmt.Sprintf( "%s%s%s%s" , str1, str2, str3, str4)fmt.Println(result)
}
输出如下:
TutorialofGoLanguage
使用+=操作符或字符串追加:在Go字符串中,允许使用+=操作符追加字符串。此操作符将一个新的或给定的字符串添加到指定字符串的末尾。
例子:
//Go program to illustrate how
//to concatenate strings
//Using += operator
package mainimport "fmt"func main() {//Creating and initializing strings
str1 := "Welcome"
str2 := "srcmini"//Using += operator
str1 += str2
fmt.Println( "String: " , str1)str1 += "This is the tutorial of Go language"
fmt.Println( "String: " , str1)str2 += "Portal"
fmt.Println( "String: " , str2)}
输出如下:
String:Welcomesrcmini
String:WelcomesrcminiThis is the tutorial of Go language
String:srcminiPortal
使用Join()函数:
此函数将字符串切片中存在的所有元素连接为单个字符串。此功能在字符串包中可用。
语法如下:
func Join(str []string, sep string) string
这里, str是可用来连接元素的字符串, sep是放置在最终字符串中元素之间的分隔符。
例子:
//Go program to illustrate how to
//concatenate all the elements
//present in the slice of the string
package mainimport (
"fmt"
"strings"
)func main() {//Creating and initializing slice of string
myslice := []string{ "Welcome" , "To" , "srcmini" , "Portal" }//Concatenating the elements
//present in the slice
//Using join() function
result := strings.Join(myslice, "-" )
fmt.Println(result)
}
【在Golang中连接两个字符串的不同方法】输出如下:
Welcome-To-srcmini-Portal
推荐阅读
- 在C#中创建对象的不同方法有哪些()
- 在Golang中比较字符串的不同方法
- 第02讲(Flink 入门程序 WordCount 和 SQL 实现)
- <技术向;修正昨天的爬取教程,并介绍一个插件
- <C语言;售货员问题
- 百度APP视频播放中的解码优化
- <还记得雪花吗;用画图深入理解递归
- SpringBoot | 3.1 配置数据源及JDBC #yyds干货盘点#
- <简单分析;汉诺塔问题