%uA0java.math.BigDecimal.divideAndRemainder(BigDecimal divisor, MathContext mc)%uA0返回一个包含divideToIntegralValue的结果,其次是剩下的两个操作数的结果,结果由两个元素组成的BigDecimal数组。
如果两个整数商和余数都需要,这种方法比单独使用divideToIntegralValue和remainder方法,因为相除仅需执行一次。
声明
以下是java.math.BigDecimal.divideAndRemainder()方法的声明
public BigDecimal[] divideAndRemainder(BigDecimal divisor, MathContext mc)
参数
-
divisor%uA0- 值通过此BigDecimal被除,并计算的余数
-
mc%uA0- 使用上下文
返回值
此方法返回由两个元素组成的BigDecimal数组:商值(divideToIntegralValue的结果)是初始元素,余数是最终元素。
Exception
-
ArithmeticException%uA0- 如果 divisor == 0
-
ArithmeticException%uA0- 如果结果不准确,但是舍入模式是不必要的,或mc.precision> 0和this.divideToIntgralValue(除数)的结果,将需要超过mc.precision位数的精度。
例子
下面的例子显示math.BigDecimal.divideAndRemainder()方法的用法
package com.yiibai import java.math.* public class BigDecimalDemo { public static void main(String[] args) { // create 2 BigDecimal objects BigDecimal bg1, bg2 bg1 = new BigDecimal("143.145") bg2 = new BigDecimal("10.01") MathContext mc = new MathContext(2) // BigDecimal array bg stores result of bg1/bg2, // using mc BigDecimal bg[] = bg1.divideAndRemainder(bg2, mc) // print quotient and remainder System.out.println("Division result") System.out.println("Quotient is " + bg[0] ) System.out.println("Remainder is " + bg[1] ) } }
让我们编译和运行上面的程序,这将产生以下结果:
Division result Quotient is 14 Remainder is 3.005