go语言浮点数float加减乘除

Go / 1955人浏览 / 0人评论

在go语言中需要做一些精确的小数处理,我们可以使用github上的的一些开源的小数处理第三方包,比如:https://github.com/shopspring/decimal,它提供了精确的小数处理。或者使用其他第三方精确的小数处理包。

go语言小数处理

在go语言中需要做一些精确的小数处理,我们可以使用github上的的一些开源的小数处理第三方包,比如:https://github.com/shopspring/decimal,它提供了精确的小数处理。或者使用其他第三方精确的小数处理包。

作者:

mwoss

go安装命令:

go get https://github.com/shopspring/decimal

示例代码

package main

import (
    "fmt"

    "github.com/shopspring/decimal"
)

func main() {
    var number_one = decimal.NewFromFloat(0.59)
    var number_two = decimal.NewFromFloat(0.12587)

    var number_three = number_one.Add(number_two) // 计算两个浮点数相加
    var number_four = number_one.Sub(number_two)  // 计算两个浮点数相减
    var number_five = number_one.Mul(number_two)  // 计算两个浮点数相乘
    var number_six = number_five.Div(number_two)  // 计算两个浮点数相除

    fmt.Println(number_one, number_two, number_three, number_four, number_five, number_six)

    var number_seven = decimal.NewFromFloat(3.6987)
    var number_eight = number_seven.Round(2)   // 保留小数点后两位(四舍五入)
    var number_nine = number_seven.Truncate(2) // 保留小数点后两位
    fmt.Println(number_eight, number_nine)
}

示例输出

0.59
0.12587  
0.71587  
0.46413  
0.0742633
0.59     
3.7      
3.69

转载注明:

0 条评论

还没有人发表评论

发表评论 取消回复

记住我的信息,方便下次评论
有人回复时邮件通知我