java.math.BigDecimal.remainder(BigDecimal divisor, MathContext mc)%uA0返回一个BigDecimal,其值为(this % divisor),根据上下文设置进行舍入。
MathContext设置会影响用于计算余数的隐除法。余数计算本身是进行准确的定义。因此,该剩余部分可包含多于mc.getPrecision()的数字。
其余数部分由this.subtract(this.divideToIntegralValue(divisor, mc).multiply(divisor))计算给出。这不是模操作,所以其结果可能是负的。%uA0
声明
以下是java.math.BigDecimal.remainder()方法的声明
public BigDecimal remainder(BigDecimal divisor, MathContext mc)
参数
-
divisor%uA0- 通过此BigDecimal的除数
-
mc%uA0-%uA0使用上下文
返回值
此方法返回BigDecimal对象是除以除数的余数,即做除法运算,四舍五入为必要时。
异常
-
ArithmeticException%uA0- if divisor == 0
-
ArithmeticException%uA0- 如果结果不准确,但是舍入模式是UNNECESSARY,或mc.precision> 0和this.divideToIntgralValue(divisor)结果,超过mc.precision位数的精度。%uA0
例子
下面的例子显示math.BigDecimal.remainder()方法的用法
package com.yiibai import java.math.* public class BigDecimalDemo { public static void main(String[] args) { // create 3 BigDecimal Objects BigDecimal bg1, bg2, bg3 MathContext mc = new MathContext(2) // 2 precision bg1 = new BigDecimal("-144.144") bg2 = new BigDecimal("16.12") // bg2 divided by bg1 using mc gives bg3 as remainder bg3 = bg1.remainder(bg2, mc) String str = "The remainder is " + bg3 // print the value of bg3 System.out.println( str ) } }
让我们编译和运行上面的程序,这将产生以下结果:
The remainder is -15.184