12.Go複合類型-字元串轉換
前言
上一篇章,我們學習了 字元串 處理的相關函數方法,本篇章來看看 字元串轉換 的相關函數方法。
4:字元串轉換
通過以上的講解,發現字元串的處理是非常重要的,GO語言也提供了字元串與其它類型之間互相轉換的函數。相應的字元串轉換函數都在”strconv”包。
Format
Format 系列函數把其他類型的轉換為字元串。
//将bool類型轉換為字元串
var str string
str = strconv.FormatBool(false)
fmt.Println(str)
執行如下:
false
将整型轉換成字元串:
//将整型轉換成字元串:
var str string
str = strconv.Itoa(666)
fmt.Println(str)
将浮點數,轉換成字元串
//将浮點數,轉換成字元串
var str string
// 'f' 指列印格式,以小數方式,3指小數位點位數,64以float64處理
str = strconv.FormatFloat(3.14,'f',3,64)
fmt.Println("str = ", str)
執行如下:
str = 3.140
Parse
Parse 系列函數把字元串轉換為其他類型
//字元串轉為其他類型
var flag bool
var err error
flag, err = strconv.ParseBool("true")
if err == nil {
fmt.Println("flag = ", flag)
} else {
fmt.Println("err = ", err)
}
// 将字元串轉換為整數
a, _ := strconv.Atoi("567")
fmt.Println("a = ", a)
// 将字元串轉換為浮點數
b, err := strconv.ParseFloat("123.23", 64)
if err == nil {
fmt.Println("b = ", b)
} else {
fmt.Println("err = ", err)
}
執行如下:
flag = true
a = 567
b = 123.23
Append
Append 系列函數将整數等轉換為字元串後,添加到現有的位元組數組中。
// 轉換為字元串後追加到位元組數組
slice := make([]byte, 0, 1024)
slice = strconv.AppendBool(slice, true)
// 第二個數為追加的數,第3個為指定10進制方式追加
slice = strconv.AppendInt(slice, 1234, 10)
slice = strconv.AppendQuote(slice, "abcgohello")
fmt.Println("slice = ", string(slice)) // 轉換string後再列印
slice = true1234"abcgohello"