如何做BigDecimal模数比较

时间:2014-04-27 22:46:52

标签: java

我对如何编写简单模数比较if语句感到困惑。我基本上只想检查当x是BigDecimal时x是20的倍数。 谢谢!

2 个答案:

答案 0 :(得分:15)

if( x.remainder(new BigDecimal(20)).compareTo(BigDecimal.ZERO) == 0 ) {
   // x is a multiple of 20
}

答案 1 :(得分:8)

您应该使用remainder()方法:

BigDecimal x = new BigDecimal(100);
BigDecimal remainder = x.remainder(new BigDecimal(20));
if (BigDecimal.ZERO.compareTo(remainder) == 0) {
    System.out.println("x can be divided by 20");
}