美文网首页安卓集中营安卓开发安卓开发
正确使用BigDecimal方式(避免出现精度问题)

正确使用BigDecimal方式(避免出现精度问题)

作者: 蓝不蓝编程 | 来源:发表于2019-01-23 18:04 被阅读1次

    正确的使用方式:

    使用字符串调用BigDecimal构造函数或者采用valueOf,但是不要直接将数字作为构造函数参数。

    BigDecimal correctWay1 = new BigDecimal("0.1");
    BigDecimal correctWay2 = BigDecimal.valueOf(0.1);
    

    错误的使用方式

    BigDecimal wrongWay = new BigDecimal(0.1);
    

    原因:采用上述构造方式,0.1是当成double传入的,double做科学计算的时候精度是有问题的,详见:https://www.cnblogs.com/cblogs/p/double-precision.html

    两种方式使用对比图

    参考

    【超详细】解释BigDecimal精度的坑
    java中double和float精度丢失问题及解决方法

    安卓开发技术分享: https://www.jianshu.com/p/442339952f26

    相关文章

      网友评论

        本文标题:正确使用BigDecimal方式(避免出现精度问题)

        本文链接:https://www.haomeiwen.com/subject/zaksjqtx.html