欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Go語(yǔ)言字符串高效拼接的實(shí)現(xiàn)

 更新時(shí)間:2019年02月02日 11:33:33   作者:志強(qiáng)1224  
這篇文章主要介紹了Go語(yǔ)言字符串高效拼接的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

+號(hào)拼接

這種拼接最簡(jiǎn)單,也最容易被我們使用,因?yàn)樗遣幌蘧幊陶Z(yǔ)言的,比如Go語(yǔ)言有,Java也有,它們是+號(hào)運(yùn)算符,在運(yùn)行時(shí)計(jì)算的。

var s string
s+="昵稱(chēng)"+":"+"志強(qiáng)1224"+"\n"
s+="聯(lián)系方式QQ"+":"+"354662600"+"\n"
fmt.Println(s)

fmt 拼接

這種拼接,借助于fmt.Sprint系列函數(shù)進(jìn)行拼接,然后返回拼接的字符串。

fmt.Sprint("昵稱(chēng)",":","志強(qiáng)1224","\n","聯(lián)系方式QQ",":","354662600")

Join 拼接

這個(gè)是利用strings.Join函數(shù)進(jìn)行拼接,接受一個(gè)字符串?dāng)?shù)組,轉(zhuǎn)換為一個(gè)拼接好的字符串。

s:=[]string{"昵稱(chēng)",":","志強(qiáng)1224","\n","聯(lián)系方式QQ",":","354662600"}
fmt.Println(strings.Join(s,""))

buffer 拼接

使用的是bytes.Buffer進(jìn)行的字符串拼接,它是非常靈活的一個(gè)結(jié)構(gòu)體,不止可以拼接字符串,還是可以byte,rune等,并且實(shí)現(xiàn)了io.Writer接口,寫(xiě)入也非常方便。

var b bytes.Buffer
b.WriteString("昵稱(chēng)")
b.WriteString(":")
b.WriteString("志強(qiáng)1224")
b.WriteString("\n")
b.WriteString("聯(lián)系方式QQ")
b.WriteString(":")
b.WriteString("354662600")
b.WriteString("\n")
fmt.Println(b.String())

builder 拼接

為了改進(jìn)buffer拼接的性能,從go 1.10 版本開(kāi)始,增加了一個(gè)builder類(lèi)型,用于提升字符串拼接的性能。它的使用和buffer幾乎一樣。

var b strings.Builder
b.WriteString("昵稱(chēng)")
b.WriteString(":")
b.WriteString("志強(qiáng)1224")
b.WriteString("\n")
b.WriteString("聯(lián)系方式QQ")
b.WriteString(":")
b.WriteString("354662600")
b.WriteString("\n")
fmt.Println(b.String())

拼接函數(shù)改造

func StringPlus(p []string) string{
  var s string
  l:=len(p)
  for i:=0;i<l;i++{
   s+=p[i]
  }
  return s
}

func StringFmt(p []interface{}) string{
  return fmt.Sprint(p...)
}

func StringJoin(p []string) string{
  return strings.Join(p,"")
}

func StringBuffer(p []string) string {
  var b bytes.Buffer
  l:=len(p)
  for i:=0;i<l;i++{
   b.WriteString(p[i])
  }
  return b.String()
}

func StringBuilder(p []string) string {
  var b strings.Builder
  l:=len(p)
  for i:=0;i<l;i++{
   b.WriteString(p[i])
  }
  return b.String()
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Go并發(fā)編程中sync/errGroup的使用

    Go并發(fā)編程中sync/errGroup的使用

    本文主要介紹了Go并發(fā)編程中sync/errGroup的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • GO語(yǔ)言并發(fā)編程之互斥鎖、讀寫(xiě)鎖詳解

    GO語(yǔ)言并發(fā)編程之互斥鎖、讀寫(xiě)鎖詳解

    這篇文章主要介紹了GO語(yǔ)言并發(fā)編程之互斥鎖、讀寫(xiě)鎖詳解,本文是GO并發(fā)編程實(shí)戰(zhàn)一書(shū)的樣章,詳細(xì)講解了互斥鎖、讀寫(xiě)鎖,然后給出了一個(gè)完整示例,需要的朋友可以參考下
    2014-11-11
  • Golang中可比較的數(shù)據(jù)類(lèi)型詳解

    Golang中可比較的數(shù)據(jù)類(lèi)型詳解

    在日常開(kāi)發(fā)中,比較操作是最常用的基本操作之一,可以用來(lái)判斷變量之間是否相等或者對(duì)應(yīng)的大小關(guān)系,本文將深入解析 Golang 中可比較的數(shù)據(jù)類(lèi)型,并結(jié)合代碼示例來(lái)說(shuō)明如何在不同情況下進(jìn)行比較,需要的朋友可以參考下
    2024-01-01
  • golang 如何實(shí)現(xiàn)HTTP代理和反向代理

    golang 如何實(shí)現(xiàn)HTTP代理和反向代理

    這篇文章主要介紹了golang 實(shí)現(xiàn)HTTP代理和反向代理的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-05-05
  • Go解析不定JSON數(shù)據(jù)的方法詳解

    Go解析不定JSON數(shù)據(jù)的方法詳解

    在開(kāi)發(fā)中常常會(huì)碰到很多JSON類(lèi)型的數(shù)據(jù)進(jìn)行交互,而其中有很多JSON數(shù)據(jù)你是不能確定它的字段和結(jié)構(gòu)的,而Go語(yǔ)言是一門(mén)靜態(tài)強(qiáng)類(lèi)型的語(yǔ)言,在進(jìn)行JSON解析的時(shí)候必須要確定字段的類(lèi)型,本文給大家介紹了Go如何解析不定JSON數(shù)據(jù),需要的朋友可以參考下
    2024-03-03
  • 協(xié)同開(kāi)發(fā)巧用gitignore中間件避免網(wǎng)絡(luò)請(qǐng)求攜帶登錄信息

    協(xié)同開(kāi)發(fā)巧用gitignore中間件避免網(wǎng)絡(luò)請(qǐng)求攜帶登錄信息

    這篇文章主要為大家介紹了協(xié)同開(kāi)發(fā)巧用gitignore中間件避免網(wǎng)絡(luò)請(qǐng)求攜帶登錄信息
    2022-06-06
  • 如何解決goland,idea全局搜索快捷鍵失效問(wèn)題

    如何解決goland,idea全局搜索快捷鍵失效問(wèn)題

    這篇文章主要介紹了如何解決goland,idea全局搜索快捷鍵失效問(wèn)題,快捷鍵失效,可能是快捷鍵沖突,也或者是快捷鍵被修改成其他了。在settings下查看快捷鍵是否被修改,下文詳細(xì)介紹需要的朋友可以參考下
    2022-04-04
  • Golang中的錯(cuò)誤處理的示例詳解

    Golang中的錯(cuò)誤處理的示例詳解

    這篇文章主要為大家詳細(xì)介紹了Golang中的錯(cuò)誤處理的相關(guān)資料,文章中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Golang有一定幫助,需要的可以參考一下
    2022-11-11
  • 解決Golang小數(shù)float64在實(shí)際工程中加減乘除的精度問(wèn)題

    解決Golang小數(shù)float64在實(shí)際工程中加減乘除的精度問(wèn)題

    這篇文章主要介紹了解決Golang小數(shù)float64在實(shí)際工程中加減乘除的精度問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • 使用go來(lái)操作redis的方法示例

    使用go來(lái)操作redis的方法示例

    今天小編就為大家分享一篇關(guān)于使用go來(lái)操作redis的方法示例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-04-04

最新評(píng)論