golang int 轉(zhuǎn)float 強(qiáng)轉(zhuǎn)和高精度轉(zhuǎn)操作
golang int 轉(zhuǎn)float
方法一:
強(qiáng)轉(zhuǎn):
代碼如下:
import "fmt" func main() { var money int money = 1 fmt.Println(float64(money) / float64(100)) }
輸出結(jié)果:0.01
方法二:
高精度轉(zhuǎn):
代碼如下:
import ( "fmt" "math/big" "strconv" ) func main() { totalAmount := 1 numrator, _ := new(big.Float).SetPrec(uint(1024)).SetString(strconv.Itoa(totalAmount)) denominator := big.NewFloat(100) denominator1 := numrator.Quo(numrator, denominator) fmt.Println(denominator1) }
輸出結(jié)果:0.01
補(bǔ)充:golang float32/64與[]byte互轉(zhuǎn)
網(wǎng)絡(luò)協(xié)議開(kāi)發(fā)中經(jīng)常需要將int、float、bool等轉(zhuǎn)為二進(jìn)制數(shù)據(jù),float32、64 與[]byte處理:
import ( "encoding/binary" "math" ) func Float32ToByte(float float32) []byte { bits := math.Float32bits(float) bytes := make([]byte, 4) binary.LittleEndian.PutUint32(bytes, bits) return bytes } func ByteToFloat32(bytes []byte) float32 { bits := binary.LittleEndian.Uint32(bytes) return math.Float32frombits(bits) } func Float64ToByte(float float64) []byte { bits := math.Float64bits(float) bytes := make([]byte, 8) binary.LittleEndian.PutUint64(bytes, bits) return bytes } func ByteToFloat64(bytes []byte) float64 { bits := binary.LittleEndian.Uint64(bytes) return math.Float64frombits(bits) }
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
golang使用sync.Once實(shí)現(xiàn)懶加載的用法和坑點(diǎn)詳解
這篇文章主要為大家詳細(xì)介紹了golang使用sync.Once實(shí)現(xiàn)懶加載的用法和坑點(diǎn),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11使用gRPC實(shí)現(xiàn)獲取數(shù)據(jù)庫(kù)版本
這篇文章主要為大家詳細(xì)介紹了如何使用gRPC實(shí)現(xiàn)獲取數(shù)據(jù)庫(kù)版本,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-12-12Go用兩個(gè)協(xié)程交替打印100以內(nèi)的奇偶數(shù)的方法詳解
這篇文章主要給大家詳細(xì)介紹了Go用兩個(gè)協(xié)程交替打印100以內(nèi)的奇偶數(shù)的示例代碼,文中給大家介紹了兩個(gè)實(shí)現(xiàn)方法,使用無(wú)緩沖的channel和設(shè)置GOMAXPROCS=1,介紹的非常詳細(xì),需要的朋友可以參考下2023-08-08golang?使用chromedp獲取頁(yè)面請(qǐng)求日志network
這篇文章主要為大家介紹了golang?使用chromedp獲取頁(yè)面請(qǐng)求日志network方法實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11