BigDecimal 除不尽导致下单 异常

    public static void main(String[] args) {
        //异常代码,除不尽导致
        //BigDecimal divide = new BigDecimal(1).divide(new BigDecimal(0.3));

        /*
           Exception in thread "main" java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
            at java.math.BigDecimal.divide(BigDecimal.java:1690)
            at Demo20.main(Demo20.java:63)
         */

        

        //解决问题:进行除法运算时指定保留位数:scale
        BigDecimal divide = new BigDecimal(1).divide(new BigDecimal(0.3),3,BigDecimal.ROUND_FLOOR);
        System.out.println(divide); //3.333
    }

https://blog.csdn.net/damoneric_guo/article/details/125542244

posted @   chuangzhou  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2022-03-06 selenmium - 操作弹出框
2022-03-06 黑盒测试方法 - 正交表
2022-03-06 表单提交 multipart/form-data 和 x-www-form-urlencoded的区别
点击右上角即可分享
微信分享提示