Linux 拨号vps windows公众号手机端

java bigdecimal除法取整的方法是什么

lewis 8年前 (2017-02-23) 阅读数 8 #程序编程
文章标签 Java

Java中使用BigDecimal进行除法取整有以下几种方法:

  1. 使用setScale方法设置保留小数位数,然后使用divide方法进行除法运算。最后调用stripTrailingZeros方法去除末尾的0。
BigDecimal result = dividend.divide(divisor, scale, RoundingMode.HALF_UP).stripTrailingZeros();

其中,dividend为被除数,divisor为除数,scale为保留的小数位数,RoundingMode.HALF_UP表示四舍五入。

  1. 使用setScale方法设置保留小数位数,然后使用divide方法进行除法运算。最后使用setScale方法再次设置保留小数位数,并指定RoundingMode.CEILING向上取整。
BigDecimal result = dividend.divide(divisor, scale, RoundingMode.HALF_UP).setScale(scale, RoundingMode.CEILING);

其中,dividend为被除数,divisor为除数,scale为保留的小数位数,RoundingMode.HALF_UP表示四舍五入,RoundingMode.CEILING表示向上取整。

  1. 使用divideToIntegralValue方法进行除法运算,得到结果后直接转换为整数。
int result = dividend.divideToIntegralValue(divisor).intValue();

其中,dividend为被除数,divisor为除数,intValue方法将结果转换为整数。

注意:使用BigDecimal进行除法运算时,需要注意除数不能为0,否则会抛出ArithmeticException异常。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门