首页 > 其他 > 详细

BigDecimal.ROUND_UP 如果 从 double 到 Decimal 有异常, 必须从double到String然后 Decimal 就可以了

时间:2020-03-12 12:57:03      阅读:67      评论:0      收藏:0      [点我收藏+]

 

比如:

//先把double==>string==>BigDecimal;直接 double==>BigDecimal 异常比如9.9
BigDecimal decimalRate = new BigDecimal(String.valueOf(lowestDiscountRate)).setScale(1, BigDecimal.ROUND_UP);
BigDecimal.ROUND_UP 是直接进位 比如2.21==》保留一位 2.3


举个栗子:
  double dd=9.9d;
        BigDecimal f1 = new BigDecimal(dd).setScale(1, BigDecimal.ROUND_UP);
        System.out.println(f1); //10.0
        BigDecimal decimalRate = new BigDecimal(String.valueOf(dd)).setScale(1, BigDecimal.ROUND_UP);

        System.out.println(decimalRate);//9.9

结果:

10.0
9.9

 

BigDecimal.ROUND_UP 如果 从 double 到 Decimal 有异常, 必须从double到String然后 Decimal 就可以了

原文:https://www.cnblogs.com/aspirant/p/12468005.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!