Golang幾種連接字符串方法

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方法類似字符串模板方法,比較靈活。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章