BigDecimal.divideAndRemainder(BigDecimal divisor, MathContex


 java.math.BigDecimal.divideAndRemainder(BigDecimal divisor, MathContext mc) 返回一個包含divideToIntegralValue的結果,其次是剩下的兩個運算元的結果,結果由兩個元素組成的BigDecimal陣列。

如果兩個整數商和餘數都需要,這種方法比單獨使用divideToIntegralValue和remainder方法,因為相除僅需執行一次。

宣告

以下是java.math.BigDecimal.divideAndRemainder()方法的宣告

public BigDecimal[] divideAndRemainder(BigDecimal divisor, MathContext mc)

引數

  • divisor - 值通過此BigDecimal被除,並計算的餘數

  • mc - 使用上下文

返回值

此方法返回由兩個元素組成的BigDecimal陣列:商值(divideToIntegralValue的結果)是初始元素,餘數是最終元素。

Exception

  • ArithmeticException - 如果 divisor == 0

  • ArithmeticException - 如果結果不準確,但是捨入模式是不必要的,或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