Golang几种连接字符串方法

本文介绍Golang中连接字符串的多种方法,包括使用+操作符、bytes.Buffer、strings.Builder及Sprintf函数。每种方法都有其特点,如操作符简单直接,bytes.Buffer和strings.Builder高效避免重复对象创建,Sprintf则提供模板式的灵活性。

Golang几种连接字符串方法

Golang中字符串是不可变的使用UTF-8编码任意字节链。把一个或多个字符相加称为字符串连接。最简单的方式使用+操作符,本文介绍多种方式连接字符串。

1. 使用加操作符

首先介绍简单使用+操作符:

package main 
  
import "fmt"
  
func main() { 
    str3 := "hello"
    str4 := "Golang"
  
    // Concatenating strings Using + operator 
    result := str3 + "," + str4 
  
    fmt.Println("Result: ", result) 
} 

输出结果:

Result: hello,Golang

既然加操作符可以,那么+=也能实现类似功能:

package main 
  
import "fmt"
  
func main() { 
  
    // Creating and initializing strings 
    str1 := "Welcome"
    str2 := " to Golang"
  
    // Using += operator 
    str1 += str2 
    fmt.Println("String: ", str1)   
} 

输出:

Result: Welcome to Golang

2. 使用bytes.Buffer

使用bytes.Buffer的方法WriterString()连接字符串的字节,从而实现连接字符串的目的。这种方法避免产生不必要的字符串对象,即不需要像使用+那样生成新的字符串对象。

package main 
  
import ( 
    "bytes"
    "fmt"
) 
  
func main() { 
  
	var b bytes.Buffer

	b.WriteString("你好")
	b.WriteString(",")
	b.WriteString("Golang")

	fmt.Println("String: ", b.String())
} 

字符串工具类strings也提供了一个封装版本:

	var myString strings.Builder
	myString.WriteString("Hello ")
	myString.WriteString("世界")

	fmt.Println(myString.String())

3. 使用Sprintf

我们还可以使用Sprintf方法连接字符串:

package main 
  
import "fmt"
  
func main() { 
  
    // Creating and initializing strings 
    str1 := "Tutorial"
    str2 := "of"
    str3 := "GoLang"
    str4 := "Language"
  
    // Concatenating strings using  
    // Sprintf() function 
    result := fmt.Sprintf("%s %s %s %s", str1,  
                          str2, str3, str4) 
      
    fmt.Println(result) 
} 

输出为:

Tutorial of GoLang Language

4. 总结

本文介绍了Golang三种方法连接字符串。最简单是使用操作符,直接操作字符串底层字节效率比较高,Sprintf方法类似字符串模板方法,比较灵活。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值