golang中字串是不可變的使用utf-8編碼任意位元組鏈。把乙個或多個字元相加稱為字串連線。最簡單的方式使用+
操作符,本文介紹多種方式連線字串。
首先介紹簡單使用+
操作符:
package main
import "fmt"
func main()
輸出結果:
result: hello,golang
既然加操作符可以,那麼+=
也能實現類似功能:
package main
import "fmt"
func main()
輸出:
result: welcome to golang
使用bytes.buffer的方法writerstring()連線字串的位元組,從而實現連線字串的目的。這種方法避免產生不必要的字串物件,即不需要像使用+
那樣生成新的字串物件。
package main
import (
"bytes"
"fmt"
)
func main()
字串工具類strings也提供了乙個封裝版本:
var mystring strings.builder
mystring.writestring("hello ")
mystring.writestring("世界")
fmt.println(mystring.string())
我們還可以使用sprintf方法連線字串:
package main
import "fmt"
func main()
輸出為:
tutorial of golang language
本文介紹了golang三種方法連線字串。最簡單是使用操作符,直接操作字串底層位元組效率比較高,sprintf方法類似字串模板方法,比較靈活。 golang 幾種字串的連線方式
最近在做效能優化,有個函式裡面的耗時特別長,看裡面的操作大多是一些字串拼接的操作,而字串拼接在 golang 裡面其實有很多種實現。1.直接使用運算子 func benchmarkaddstringwithoperator b testing.b func benchmarkaddmorestrin...
幾種字串方法
整型和布林值 整型進製轉換 10 2 2 10 方法 8421 布林值轉換 int bool str bool bool false 只有當內容為空時,才為假,有空格時也為真 bool 0 false 其他為真 字串索引 例如 meet 從左向右 0123 從右向左 4 3 2 1 切片從左向右 起...
Golang字串的連線方式
func benchmarkaddstringwithoperator b testing.b golang 裡面的字串都是不可變的,每次運算都會產生乙個新的字串,所以會產生很多臨時的無用的字串,不僅沒有用,還會給 gc 帶來額外的負擔,所以效能比較差 func benchmarkaddstring...