go語言字符串的拼接和切片方法總結(jié)
一,go字符串的本質(zhì)
go語言字符串的本質(zhì)就是byte[]數(shù)組,里面每一個數(shù)據(jù)存的是字符的Unicode碼。
二,字符串拼接的幾種方法
1,使用+號拼接字符串
拼接之后返回一個新的字符串。
package main import "fmt" func main() { str1 := "go" str2 := "語言" re := str1 + str2 fmt.Println(re) }
2,使用fmt包的Sprintf()函數(shù)
對字符串使用格式化輸出的形式來拼接字符串。返回一個拼接之后的字符串對象。
package main import "fmt" func main() { str1 := "go" str2 := "語言" re := fmt.Sprintf("%s%s", str1, str2) fmt.Println(re) }
3,使用strings包的Join()函數(shù)
package main import ( "fmt" "strings" ) func main() { str1 := "go" str2 := "語言" re := strings.Join([]string{str1, str2}, "") fmt.Println(re) }
4,使用bytes.Buffer儲存字符串再打印輸出
package main import ( "bytes" "fmt" ) func main() { str1 := "go" str2 := "語言" var buffer bytes.Buffer //聲明一個buffer變量 buffer.WriteString(str1) buffer.WriteString(str2) fmt.Printf("buffer.String(): %v\n", buffer.String()) }
這種方式最常用。因為它將字符串變?yōu)榭勺儯瑑?nèi)存消耗小。
三,字符串的切片
切片很好理解,[m:n]截取從m至n-1間的字符,如果缺省,則表示頭或者尾。[:]表示整個字符串。[0]表示第一個字符。
四,字符串函數(shù)
附:golang將整型切片轉(zhuǎn)換為字符串
在python中,將list轉(zhuǎn)換為str,使用str.join即可,但在golang中,strings.join要求是一個字符串類型的序列,所以可以先將序列格式化成字符串,然后替換其中的空格,再去掉收尾的[]即可。
package main import "fmt" func Int2Str() { a := []int{1, 2, 3, 4, 5} fmt.Println(strings.Trim(strings.Replace(fmt.Sprint(a), " ", ",", -1), "[]")) // 1,2,3,4,5 } func main() { Int2Str() }
總結(jié)
到此這篇關(guān)于go語言字符串的拼接和切片的文章就介紹到這了,更多相關(guān)go語言字符串拼接與切片內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
golang如何通過viper讀取config.yaml文件
這篇文章主要介紹了golang通過viper讀取config.yaml文件,圍繞golang讀取config.yaml文件的相關(guān)資料展開詳細內(nèi)容,需要的小伙伴可以參考一下2022-03-03Go語言題解LeetCode1266訪問所有點的最小時間示例
這篇文章主要為大家介紹了Go語言題解LeetCode1266訪問所有點的最小時間示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-01-01Qt6.5 grpc組件使用 + golang grpc server
這篇文章主要介紹了Qt6.5 grpc組件使用+golang grpc server示例,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-05-05詳解Go語言如何實現(xiàn)類似Python中的with上下文管理器
熟悉?Python?的同學(xué)應(yīng)該知道?Python?中的上下文管理器非常好用,那么在?Go?中是否也能實現(xiàn)上下文管理器呢,下面小編就來和大家仔細講講吧2023-07-07