参考

https://godoc.org/github.com/shopspring/decimal#example-NewFromFloat

代码

package digitalConverimport ("fmt""github.com/shopspring/decimal"
)//一分钱转一块钱,
//分转元
func Fen2Yuan(price uint64) string {d := decimal.New(1,2) //分除以100得到元result := decimal.NewFromInt(int64(price)).DivRound(d,2).String()fmt.Printf("输入值为:%d,      分转元后,精度为二的结果为:%s\n", price, result)return result
}//元转分,乘以100后,保留整数部分
func Yuan2Fen(price float64) int64 {d := decimal.New(1,2)//分转元乘以100d1 := decimal.New(1,0)//乘完之后,保留2为小数,需要这么一个中间参数//df := decimal.NewFromFloat(price).Mul(d).DivRound(d1,2).String()df := decimal.NewFromFloat(price).Mul(d).IntPart()//如下是满足,当乘以100后,仍然有小数位,取四舍五入法后,再取整数部分dff := decimal.NewFromFloat(price).Mul(d).DivRound(d1,0).IntPart()fmt.Printf("输入值为:%f, 简单的元转分后,取整数部分:%d\n", price, df)fmt.Printf("输入值为:%f, 元转分后,若还有小数,需做四舍五入后,再取整数:%d\n", price, dff)return df
}
//main.go
func main() {digitalConver.Fen2Yuan(2556)digitalConver.Yuan2Fen(23.56511)
}

输出

输入值为:2556,      分转元后,精度为二的结果为:25.56
输入值为:23.565110, 简单的元转分后,取整数部分:2356
输入值为:23.565110, 元转分后,若还有小数,需做四舍五入后,再取整数:2357

golang元转分、分转元相关推荐

  1. java 分转元_java元转分分转元

    一个简单的元转分分转元工具类,是使用了BigDecimal来对金额高精度计算.BigDecimal的介绍这里就不展开了.直接上代码: AmountUtil.javapackage com.weizhi ...

  2. java 金额转换 元转分 分转元

    import java.math.BigDecimal;/*** 作 者:lianxin*/ public class MoneyUtils {/*** 商户金额单位对应支付定单金额单位(元对应分)比 ...

  3. Android - 分转元、元转分 金额工具类

    说明: Android涉及到的金额分转元.元转分,写成工具类做记录使用. 需求: 1.元转分: 可传入字符串或者long型(隐式转换为long型也可)整数. 若传入为字符串,则通过替换小数点的方式转换 ...

  4. Java元转12位分_java 分转元与元转分实现操作

    分转元 private String fenToYuan(String amount){ NumberFormat format = NumberFormat.getInstance(); try{ ...

  5. 带有两位小数的元转分

    只对有两位小数的元转分使用,2位以上不适用,会直接把第三位小数去掉,丢精度 /*** 元 转 分 -- 保证精度准确* @param price* @return*/public static int ...

  6. java 交易金额转换分,java金额元与分转换工具种

    java金额元与分转换工具类 java金额元与分转换的一个工具类. 1.元转分: 可传入字符串或者long型(隐式转换为long型也可)整数. 若传入为字符串,则通过替换小数点的方式转换,小数点有多位 ...

  7. BigDecimal 元转分-加减乘除、百分比

    触发,结果展示为 百分比 125% import java.math.BigDecimal; import java.text.NumberFormat;public class Del4 {publ ...

  8. php 浮点型float 强转int php金额计算 php元转分

    float 转int导致的误差太大,出现下面的问题. 浮点数的精度 浮点数的精度有限.尽管取决于系统,PHP 通常使用 IEEE 754 双精度格式,则由于取整而导致的最大相对误差为 1.11e-16 ...

  9. 微信支付元转分的正确姿势

    1.背景 近期做了一个涉及微信支付的项目,由于工期比较紧张,所以引用了一款GitHub上的第三方SDK,开发效率还是蛮高的.但是在使用的过程中,确实也遇到一些bug.此处分享一下元转分的正确实现方式. ...

最新文章

  1. 软件开发环境-按开发阶段分类
  2. 加密货币与智能合约的隐私 (一): 区块链上的隐私
  3. service调用的存储过程里显式commit,而导致事务不能rollback
  4. 金九银十中,看看这31道Android面试题
  5. 一个ABAP程序,能够下载指定的note到本地
  6. linux idea 权限,Linux下idea由于缺少相关权限导致的tomcat ERROR
  7. 2008至今,Chrome如何成长为霸主
  8. 听说有人不了解柔性数组
  9. vstar为什么登录不了_一手的闲鱼号,为什么现在闲鱼号一号难求
  10. 悲剧!他写了20000行代码,却连6岁孩子都比不过!
  11. java计算机毕业设计计算机系教师教研科研管理系统源码+数据库+系统+lw文档+mybatis+运行部署
  12. JAVA向word模板文档中写入数据并下载
  13. Java简单端口扫描器
  14. 什么是OA系统?OA系统的协同门户平台有哪些特点?
  15. 音频录制(react)
  16. html 纵向滚动条,css设置纵向滚动条
  17. 深度deepin20打印失败“Can’t create temporary file”解决方法
  18. iOS CRC 校验
  19. 球球英雄服务器维护中,球球英雄有效兑换码20208月未过期
  20. 文化的影响:整体感知与分析感知

热门文章

  1. python 培训合肥
  2. C++ vector数组实现多级排序—使用sort()函数
  3. HarmonyOS 能否成为世界第三大操作系统?
  4. 二阶系统阻尼比与稳定性的关系
  5. mysql查询连续三天100以上_一个SQL查询连续三天的流量100以上的数据值【SQql Server】...
  6. 2018北京区域赛总结
  7. leetcode 组合总和(Java)
  8. WIFI 破解与加固(Aircrack-ng + 无线网卡)
  9. 推荐一个好用的免费空间
  10. 计算机动画制作第一节教案,计算机动画制作的教学设计