golang中的字符串拼接
go语言字符串转数组go语⾔中⽀持的字符串拼接的⽅法有很多种,这⾥就来罗列⼀下
常⽤的字符串拼接⽅法
1.最常⽤的⽅法肯定是 + 连接两个字符串。这与python类似,不过由于golang中的字符串是不可变的类型,因此⽤ + 连接会产⽣⼀个新的字符串对效率有影响。
s1 := "字符串"
s2 := "拼接"
s3 := s1 + s2
fmt.Print(s3) //s3 = "打印字符串"
2.第⼆种⽅法使⽤sprintf函数,虽然不会像直接使⽤ + 那样产⽣临时字符串。但是效率也不⾼
s1 := "字符串"
s2 := "拼接"
s3 := fmt.Sprintf("%s%s", s1, s2) //s3 = "打印字符串"
3.第三种⽅法是⽤Join函数,这⾥我们需要先引⼊strings包才能调⽤Join函数。Join函数会先根据字符串数组的内容,计算出⼀个拼接之后的长度,然后申请对应⼤⼩的内存,⼀个⼀个字符串填⼊,在已有⼀个数组的情况下,这种效率会很⾼,如果没有的话效率也不⾼。
//需要先导⼊strings包
s1 := "字符串"
s2 := "拼接"
//定义⼀个字符串数组包含上述的字符串
var str []string = []string{s1, s2}
//调⽤Join函数
s3 := strings.Join(str, "")
fmt.Print(s3)
4.第四个⽅法是调⽤buffer.WriteString函数,这种⽅法的性能就要⼤⼤优于上⾯的了。
//需要先导⼊bytes包
s1 := "字符串"
s2 := "拼接"
//定义Buffer类型
var bt bytes.Buffer
向bt中写⼊字符串
bt.WriteString(s1)
bt.WriteString(s2)
//获得拼接后的字符串
s3 := bt.String()
5.第5个⽅法是⽤buffer.Builder,这个⽅法和上⾯的差不多,不过官⽅建议⽤这个,使⽤⽅法和上⾯基本⼀样
//需要先导⼊Strings包
s1 := "字符串"
s2 := "拼接"
var build strings.Builder
build.WriteString(s1)
build.WriteString(s2)
s3 := build.String()
结论
⼀般对于少量的字符串拼接可以直接⽤+来连接,不过最好的⽅法还是Builder。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论