天天看點

12.Go複合類型-字元串轉換

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"