在什么情况下BigDecimal的余数方法会返回负值?
在Javadoc https://root.cern.ch/phpBB3/中注明:
其余部分由{{1}}给出。请注意,这不是模运算(结果可能是负数)。
答案 0 :(得分:0)
根据JavaDoc,该操作的结果计算如下:
其余部分由
提供
this.subtract(this.divideToIntegralValue(divisor).multiply(divisor))
。
所以:如果BigInteger的实例指向负数,则结果可以是负数。
public static void main(String[] args) {
BigInteger a = new BigInteger("-100");
BigInteger b = new BigInteger("3");
BigInteger result = a.remainder(b);
System.out.println(result);
}
这将打印 -1