Go 類型轉(zhuǎn)換工具包strconv包的用法
Go 語(yǔ)言的 strconv
包提供了用于基本數(shù)據(jù)類型之間轉(zhuǎn)換的函數(shù),包括字符串到其他基本類型的轉(zhuǎn)換,以及其他基本類型到字符串的轉(zhuǎn)換。
字符串轉(zhuǎn)換為基本數(shù)據(jù)類型
strconv.Atoi
:將字符串轉(zhuǎn)換為int
strconv.ParseBool
:將字符串轉(zhuǎn)換為bool
strconv.ParseFloat
:將字符串轉(zhuǎn)換為float64
strconv.ParseInt
:將字符串轉(zhuǎn)換為int64
,可以指定進(jìn)制strconv.ParseUint
:將字符串轉(zhuǎn)換為uint64
,可以指定進(jìn)制
package main import ( "fmt" "log" "strconv" ) func main() { //字符串轉(zhuǎn)換為基本數(shù)據(jù)類型 //----------------------------------- strconv.Atoi - 將字符串轉(zhuǎn)換為 int。 intStr := "123" intVal, err := strconv.Atoi(intStr) if err != nil { log.Fatal(err) } fmt.Printf("%v,%T\n", intVal, intVal) fmt.Println(intVal) // 輸出: 123 //----------------------------------- strconv.ParseBool - 將字符串轉(zhuǎn)換為 bool。 boolStr := "true" boolVal, err := strconv.ParseBool(boolStr) if err != nil { log.Fatal(err) } fmt.Printf("%v,%T\n", boolVal, boolVal) fmt.Println(boolVal) // 輸出: true //----------------------------------- strconv.ParseFloat - 將字符串轉(zhuǎn)換為 float64。 floatStr := "123.45" floatVal, err := strconv.ParseFloat(floatStr, 64) if err != nil { log.Fatal(err) } fmt.Printf("%v,%T\n", floatVal, floatVal) fmt.Println(floatVal) // 輸出: 123.45 //----------------------------------- strconv.ParseInt - 將字符串轉(zhuǎn)換為 int64,可以指定進(jìn)制。 intStrParseInt := "123" // 默認(rèn)為10進(jìn)制 intValParseInt, err := strconv.ParseInt(intStrParseInt, 10, 64) if err != nil { log.Fatal(err) } fmt.Printf("%v,%T\n", intValParseInt, intValParseInt) fmt.Println(intValParseInt) // 輸出: 123 //----------------------------------- 2進(jìn)制 binStr := "11010001" var intVal2, err2 = strconv.ParseInt(binStr, 2, 64) if err2 != nil { log.Fatal(err2) } fmt.Printf("%v,%T\n", intVal2, intVal2) fmt.Println(intVal2) // 輸出: 209 //-----------------------------------strconv.ParseUint - 將字符串轉(zhuǎn)換為 uint64,可以指定進(jìn)制。 uintStr := "123" uintVal, err := strconv.ParseUint(uintStr, 10, 64) if err != nil { log.Fatal(err) } fmt.Printf("%v,%T\n", uintVal, uintVal) fmt.Println(uintVal) // 輸出: 123 }
基本數(shù)據(jù)類型轉(zhuǎn)換為字符串
strconv.Itoa
:將int
轉(zhuǎn)換為字符串strconv.FormatBool
:將bool
轉(zhuǎn)換為字符串strconv.FormatFloat
:將float64
轉(zhuǎn)換為字符串,可以指定格式化選項(xiàng)strconv.FormatInt
:將int64
轉(zhuǎn)換為字符串,可以指定進(jìn)制strconv.FormatUint
:將uint64
轉(zhuǎn)換為字符串,可以指定進(jìn)制
package main import ( "fmt" "strconv" ) func main() { //基本數(shù)據(jù)類型轉(zhuǎn)換為字符串 //-----------------------------------strconv.Itoa - 將 int 轉(zhuǎn)換為字符串。 intVal := 123 intStr := strconv.Itoa(intVal) fmt.Printf("%v,%T\n", intStr, intStr) fmt.Println(intStr) // 輸出: 123 //strconv.FormatBool - 將 bool 轉(zhuǎn)換為字符串。 boolVal := true boolStr := strconv.FormatBool(boolVal) fmt.Printf("%v,%T\n", boolStr, boolStr) fmt.Println(boolStr) // 輸出: true //-----------------------------------strconv.FormatFloat - 將 float64 轉(zhuǎn)換為字符串,可以指定格式化選項(xiàng)。 floatVal := 123.45 floatStr := strconv.FormatFloat(floatVal, 'f', 2, 64) fmt.Printf("%v,%T\n", floatStr, floatStr) fmt.Println(floatStr) // 輸出: 123.45 //-----------------------------------strconv.FormatInt - 將 int64 轉(zhuǎn)換為字符串,可以指定進(jìn)制。 intVal64 := int64(123) intStr64 := strconv.FormatInt(intVal64, 10) // 10進(jìn)制 fmt.Printf("%v,%T\n", intStr64, intStr64) fmt.Println(intStr64) // 輸出: 123 //----------------------------------- 2進(jìn)制 intStr2 := strconv.FormatInt(intVal64, 2) fmt.Printf("%v,%T\n", intStr2, intStr2) fmt.Println(intStr) // 輸出: 1111011 //-----------------------------------strconv.FormatUint - 將 uint64 轉(zhuǎn)換為字符串,可以指定進(jìn)制。 uintVal := uint64(123) uintStr := strconv.FormatUint(uintVal, 10) // 10進(jìn)制 fmt.Printf("%v,%T\n", uintStr, uintStr) fmt.Println(uintStr) // 輸出: 123 //----------------------------------- 16進(jìn)制 uintStr = strconv.FormatUint(uintVal, 16) fmt.Printf("%v,%T\n", uintStr, uintStr) fmt.Println(uintStr) // 輸出: 7b }
到此這篇關(guān)于Go 類型轉(zhuǎn)換工具包strconv包的用法的文章就介紹到這了,更多相關(guān)Go strconv包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang遠(yuǎn)程調(diào)用框架RPC的具體使用
Remote Procedure Call (RPC) 是一種使用TCP協(xié)議從另一個(gè)系統(tǒng)調(diào)用應(yīng)用程序功能執(zhí)行的方法。Go有原生支持RPC服務(wù)器實(shí)現(xiàn),本文通過(guò)簡(jiǎn)單實(shí)例介紹RPC的實(shí)現(xiàn)過(guò)程2022-12-12

Go文件操作(新建打開(kāi)寫入讀取刪除關(guān)閉)學(xué)習(xí)筆記

利用Golang生成整數(shù)隨機(jī)數(shù)方法示例

Go語(yǔ)言實(shí)現(xiàn)控制臺(tái)輸入&生成隨機(jī)數(shù)詳解

Go語(yǔ)言實(shí)現(xiàn)socket實(shí)例

Golang實(shí)現(xiàn)自己的orm框架實(shí)例探索

Go語(yǔ)言Gin框架中使用MySQL數(shù)據(jù)庫(kù)的三種方式