时间:2021-05-22
golang int 转float
强转:
代码如下:
import "fmt"func main() { var money int money = 1 fmt.Println(float64(money) / float64(100))}输出结果:0.01
高精度转:
代码如下:
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)}输出结果:0.01
补充:golang float32/64与[]byte互转
网络协议开发中经常需要将int、float、bool等转为二进制数据,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)}以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1、采用强转的方式floata=1.1L;//定义一个float型变量,变量名为a,值为1.1,L表示是浮点型intb=(int)a;//用(int)强制转换为
1.字节转10进制直接使用(int)类型转换。/**字节转10进制*/publicstaticintbyte2Int(byteb){intr=(int)b;re
(1)int转strings:=strconv.Itoa(i)等价于s:=strconv.FormatInt(int64(i),10)(2)int64转stri
本文主要介绍了iOS中对象指针和基础数据类型如何进行强转,下面话不多说,直接来看示例详解。一、对象指针的强转:UIView*view=[UIViewnew];/
float类型的表示可以有以下几种:复制代码代码如下:使用PHP的float类型需要注意的是:PHP的float类型的精度有点问题。如果需要高精度的数学计算,可