Go 類型轉(zhuǎn)換工具包strconv包的用法
更新時間:2024年05月15日 10:04:30 作者:比豬聰明
Go 語言的?strconv?包提供了用于基本數(shù)據(jù)類型之間轉(zhuǎn)換的函數(shù),本文主要介紹了Go 類型轉(zhuǎn)換工具包strconv包的用法,具有一定的參考價值,感興趣的可以了解一下
Go 語言的 strconv 包提供了用于基本數(shù)據(jù)類型之間轉(zhuǎn)換的函數(shù),包括字符串到其他基本類型的轉(zhuǎn)換,以及其他基本類型到字符串的轉(zhuǎn)換。
字符串轉(zhuǎn)換為基本數(shù)據(jù)類型
strconv.Atoi:將字符串轉(zhuǎn)換為intstrconv.ParseBool:將字符串轉(zhuǎn)換為boolstrconv.ParseFloat:將字符串轉(zhuǎn)換為float64strconv.ParseInt:將字符串轉(zhuǎn)換為int64,可以指定進制strconv.ParseUint:將字符串轉(zhuǎn)換為uint64,可以指定進制
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,可以指定進制。
intStrParseInt := "123" // 默認為10進制
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進制
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,可以指定進制。
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)換為字符串,可以指定格式化選項strconv.FormatInt:將int64轉(zhuǎn)換為字符串,可以指定進制strconv.FormatUint:將uint64轉(zhuǎ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)換為字符串,可以指定格式化選項。
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)換為字符串,可以指定進制。
intVal64 := int64(123)
intStr64 := strconv.FormatInt(intVal64, 10) // 10進制
fmt.Printf("%v,%T\n", intStr64, intStr64)
fmt.Println(intStr64) // 輸出: 123
//----------------------------------- 2進制
intStr2 := strconv.FormatInt(intVal64, 2)
fmt.Printf("%v,%T\n", intStr2, intStr2)
fmt.Println(intStr) // 輸出: 1111011
//-----------------------------------strconv.FormatUint - 將 uint64 轉(zhuǎn)換為字符串,可以指定進制。
uintVal := uint64(123)
uintStr := strconv.FormatUint(uintVal, 10) // 10進制
fmt.Printf("%v,%T\n", uintStr, uintStr)
fmt.Println(uintStr) // 輸出: 123
//----------------------------------- 16進制
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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Go文件操作(新建打開寫入讀取刪除關(guān)閉)學習筆記
這篇文章主要為大家介紹了Go文件操作(新建打開寫入讀取刪除關(guān)閉)學習筆記,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
2024-01-01
Go語言實現(xiàn)控制臺輸入&生成隨機數(shù)詳解
這篇文章主要介紹了Go語言如何實現(xiàn)控制臺輸入&生成隨機數(shù),文中通過示例代碼介紹的非常詳細,對大家的學習有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
2022-05-05
Go語言Gin框架中使用MySQL數(shù)據(jù)庫的三種方式
本文主要介紹了Go語言Gin框架中使用MySQL數(shù)據(jù)庫的三種方式,通過三種方式實現(xiàn)增刪改查的操作,具有一定的參考價值,感興趣的可以了解一下
2023-11-11 
