go中string、int、float相互轉(zhuǎn)換的實(shí)現(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(十進(jìn)制)
// 參數(shù)1:帶轉(zhuǎn)換字符串, // 參數(shù)2:基于幾進(jìn)制,值可以是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)換為浮點(diǎn)數(shù) // str:要轉(zhuǎn)換的字符串 // bitSize:指定浮點(diǎn)類型(32:float32、64:float64) // 如果 str 是合法的格式,而且接近一個浮點(diǎn)值, // 則返回浮點(diǎn)數(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 將浮點(diǎn)數(shù) f 轉(zhuǎn)換為字符串值 // f:要轉(zhuǎn)換的浮點(diǎn)數(shù) // fmt:格式標(biāo)記(b、e、E、f、g、G) // prec:精度(數(shù)字部分的長度,不包括指數(shù)部分) // bitSize:指定浮點(diǎn)類型(32:float32、64:float64) // 格式標(biāo)記: // 'b' (-ddddp±ddd,二進(jìn)制指數(shù)) // 'e' (-d.dddde±dd,十進(jìn)制指數(shù)) // 'E' (-d.ddddE±dd,十進(jìn)制指數(shù)) // 'f' (-ddd.dddd,沒有指數(shù)) // 'g' ('e':大指數(shù),'f':其它情況) // 'G' ('E':大指數(shù),'f':其它情況) // 如果格式標(biāo)記為 'e','E'和'f',則 prec 表示小數(shù)點(diǎn)后的數(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)換的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)go string、int、float相互轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang操作sqlite3數(shù)據(jù)庫的詳細(xì)教程
最近會使用到sqlite3,這里作個記錄,記性越來越差就是這樣,下面這篇文章主要給大家介紹了關(guān)于Golang操作sqlite3數(shù)據(jù)庫的詳細(xì)教程,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-04-04詳解golang中的結(jié)構(gòu)體編解碼神器Mapstructure庫
mapstructure是GO字典(map[string]interface{})和Go結(jié)構(gòu)體之間轉(zhuǎn)換的編解碼工具,這篇文章主要為大家介紹一下Mapstructure庫的相關(guān)使用,希望對大家有所幫助2023-09-09Windows10系統(tǒng)下安裝Go環(huán)境詳細(xì)步驟
Go語言是谷歌推出的一款全新的編程語言,可以在不損失應(yīng)用程序性能的情況下極大的降低代碼的復(fù)雜性,這篇文章主要給大家介紹了關(guān)于Windows10系統(tǒng)下安裝Go環(huán)境的詳細(xì)步驟,需要的朋友可以參考下2023-11-11GO 函數(shù)式選項模式(Functional Options Pattern)
Option模式支持傳遞多個參數(shù),并且在參數(shù)個數(shù)、類型發(fā)生變化時保持兼容性,任意順序傳遞參數(shù),下面給大家介紹GO 函數(shù)式選項模式(Functional Options Pattern)的相關(guān)知識,感興趣的朋友一起看看吧2021-10-10go語言reflect.Type?和?reflect.Value?應(yīng)用示例詳解
這篇文章主要為大家介紹了go語言reflect.Type?和?reflect.Value?應(yīng)用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09golang DNS服務(wù)器的簡單實(shí)現(xiàn)操作
這篇文章主要介紹了golang DNS服務(wù)器的簡單實(shí)現(xiàn)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04Golang實(shí)現(xiàn)字符串倒序的幾種解決方案
給定一個字符串,按單詞將該字符串逆序是我們大家在開發(fā)中可能會遇到的一個需求,所以下面這篇文章主要給大家介紹了關(guān)于Golang如何實(shí)現(xiàn)字符串倒序的幾種解決方案,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。2017-10-10