
文章插圖
+拼接方式這種方式是我在寫golang經(jīng)常用的方式,go語言用+拼接,php使用.拼接,不過由于golang中的字符串是不可變的類型,因此用 + 連接會產(chǎn)生一個新的字符串對效率有影響 。
轉(zhuǎn)自:go語言中文文檔:www.topgoer.com
func main() {s1 := "hello"s2 := "word"s3 := s1 + s2fmt.Print(s3) //s3 = "helloword"}sprintf函數(shù)s1 := "hello"s2 := "word"s3 := fmt.Sprintf("%s%s", s1, s2) //s3 = "helloword"這種方式也是開發(fā)過程中經(jīng)常使用到的,這樣寫的好處就是不會直接產(chǎn)生臨時字符串,但是效率好像也是不是特別高 。
Join函數(shù)使用Join函數(shù)我們需要先引入strings包才能調(diào)用Join函數(shù) 。Join函數(shù)會先根據(jù)字符串數(shù)組的內(nèi)容,計算出一個拼接之后的長度,然后申請對應大小的內(nèi)存,一個一個字符串填入,在已有一個數(shù)組的情況下,這種效率會很高,如果沒有的話效率也不高 。我一般用來切片轉(zhuǎn)字符串使用 。
s1 := "hello"s2 := "word"var str []string = []string{s1, s2}s3 := strings.Join(str, "")fmt.Print(s3)buffer.Builderbuffer.WriteString函數(shù)s1 := "hello"s2 := "word"var bt bytes.Bufferbt.WriteString(s1)bt.WriteString(s2)s3 := bt.String()fmt.Println(s3)效率比上面的高不少但是我在開發(fā)中基本上沒有用過 。
buffer.Builder函數(shù)s1 := "hello"s2 := "word"var build strings.Builderbuild.WriteString(s1)build.WriteString(s2)s3 := build.String()fmt.Println(s3)官方建議使用的的拼接方式,和上面的使用方法差不多,官方建議是官方的我是小白只喜歡第一種,所以一般情況下我都是用+拼接,如果拼接的字符串比較長的話就是最后一種方式了,畢竟保命要緊 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助:- 如何在手機上取消業(yè)務(wù)? 如何取消手機業(yè)務(wù)
- excel復雜表格制作技巧 excel取消科學計數(shù)法在哪里設(shè)置
- 新cdkey兌換碼領(lǐng)取分享 和平精英cdk兌換碼
- ??新浪微博AIR怎么取消自動新 微博AIR取消自動新教程??
- 奧密克戎會取代德爾塔嗎 奧密克戎和德爾塔對比圖
- arduino編程基礎(chǔ)知識 arduino編程語言入門
- 但千萬別隨意領(lǐng)取 失業(yè)金領(lǐng)取條件及標準能領(lǐng)幾個月
- 無稱怎樣量取一斤面粉 一次性杯子量100克面粉
- 婆婆的不斷索取 隔三差五聽見公婆
- 地膚子取物 苦參取物
