go中string、int、float相互轉(zhuǎn)換的實現(xiàn)示例
之前很多次用到的時候總會忘一些,這次記下來,后面再忘了就直接來這查~。
string轉(zhuǎn)其它
string --> int:將字符串13轉(zhuǎn)換為int類型的數(shù)值13
str := "13" distInt,err := strconv.Atoi(str)
string --> int64:將字符串13轉(zhuǎn)換為int64(十進制)
// 參數(shù)1:帶轉(zhuǎn)換字符串, // 參數(shù)2:基于幾進制,值可以是0,8,16,32,64 // 參數(shù)3:要轉(zhuǎn)成哪個int類型:可以是0、8、16、32、64,分別對應(yīng) int,int8,int16,int32,int64 distInt64, err := strconv.ParseInt(str, 10, 64)
string --> float64、float32
// ParseFloat 將字符串轉(zhuǎn)換為浮點數(shù) // str:要轉(zhuǎn)換的字符串 // bitSize:指定浮點類型(32:float32、64:float64) // 如果 str 是合法的格式,而且接近一個浮點值, // 則返回浮點數(shù)的四舍五入值(依據(jù) IEEE754 的四舍五入標(biāo)準(zhǔn)) // 如果 str 不是合法的格式,則返回“語法錯誤” // 如果轉(zhuǎn)換結(jié)果超出 bitSize 范圍,則返回“超出范圍” //到float64 distFloat,err := strconv.ParseFloat(str,64) //到float32 distFloat,err := strconv.ParseFloat(str,32)
int、int64轉(zhuǎn)其它
int --> string
i := 11 str1 := strconv.Itoa(i) //或 str2 := strconv.FormatInt(int64(i),10)
int64 --> string
distStr := strconv.FormatInt(num,10)
float轉(zhuǎn)其它
float --> string
// FormatFloat 將浮點數(shù) f 轉(zhuǎn)換為字符串值
// f:要轉(zhuǎn)換的浮點數(shù)
// fmt:格式標(biāo)記(b、e、E、f、g、G)
// prec:精度(數(shù)字部分的長度,不包括指數(shù)部分)
// bitSize:指定浮點類型(32:float32、64:float64)
// 格式標(biāo)記:
// 'b' (-ddddp±ddd,二進制指數(shù))
// 'e' (-d.dddde±dd,十進制指數(shù))
// 'E' (-d.ddddE±dd,十進制指數(shù))
// 'f' (-ddd.dddd,沒有指數(shù))
// 'g' ('e':大指數(shù),'f':其它情況)
// 'G' ('E':大指數(shù),'f':其它情況)
// 如果格式標(biāo)記為 'e','E'和'f',則 prec 表示小數(shù)點后的數(shù)字位數(shù)
// 如果格式標(biāo)記為 'g','G',則 prec 表示總的數(shù)字位數(shù)(整數(shù)部分+小數(shù)部分)
str1 = strconv.FormatFloat(11.34,'E',-1,32)
str2 = strconv.FormatFloat(10.55,'E',-1,64)
fmt.Println(str1,str2) //1.134E+01 1.055E+01
//解析轉(zhuǎn)換后的string變量str為float
h,_ :=strconv.ParseFloat(str1,32)
fmt.Println(h) //11.34000015258789
h,_ =strconv.ParseFloat(str2,64)
fmt.Println(h) //10.55
float64 --> int64(會有精度損失)
var x float64 = 6.9 y := int64(x)
到此這篇關(guān)于go中string、int、float相互轉(zhuǎn)換的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)go string、int、float相互轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang實現(xiàn)Json轉(zhuǎn)結(jié)構(gòu)體的示例詳解
這篇文章主要為大家詳細(xì)介紹了Golang實現(xiàn)Json轉(zhuǎn)結(jié)構(gòu)體的方法,文中的示例代碼講解詳細(xì),對學(xué)習(xí)Go語言有一定的幫助,需要的可以參考一下2023-02-02
Go外部依賴包從vendor,$GOPATH和$GOPATH/pkg/mod查找順序
這篇文章主要介紹了Go外部依賴包vendor,$GOPATH和$GOPATH/pkg/mod下查找順序,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12
Windows下CMD執(zhí)行Go出現(xiàn)中文亂碼的解決方法
本文主要介紹了Windows下CMD執(zhí)行Go出現(xiàn)中文亂碼的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
再次探討go實現(xiàn)無限 buffer 的 channel方法
我們知道go語言內(nèi)置的channel緩沖大小是有上限的,那么我們自己如何實現(xiàn)一個無限 buffer 的 channel呢?今天通過本文給大家分享go實現(xiàn)無限 buffer 的 channel方法,感興趣的朋友一起看看吧2021-06-06
如何解析golang中Context在HTTP服務(wù)中的角色
這篇文章主要介紹了如何解析golang中Context在HTTP服務(wù)中的角色問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03
關(guān)于golang高并發(fā)的實現(xiàn)與注意事項說明
這篇文章主要介紹了關(guān)于golang高并發(fā)的實現(xiàn)與注意事項說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-05-05

