BigDecimal[ ] divideAndRemainder(BigDecimal divisor, MathContext mc)

优质
小牛编辑
131浏览
2023-12-01

描述 (Description)

java.math.BigDecimal.divideAndRemainder(BigDecimal divisor, MathContext mc)返回一个双元素BigDecimal数组,其中包含divideToIntegralValue的结果,后跟两个操作数上的余数结果。

如果需要整数商和余数,则此方法比分别使用divideToIntegralValue和remainder方法更快,因为除法只需执行一次。

声明 (Declaration)

以下是java.math.BigDecimal.divideAndRemainder()方法的声明。

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

参数 (Parameters)

  • divisor - 要分割此BigDecimal的值,以及计算的余数。

  • mc - 要使用的上下文。

返回值 (Return Value)

此方法返回一个两元素BigDecimal数组:商(divideToIntegralValue的结果)是初始元素,余数是最终元素。

异常 (Exception)

  • ArithmeticException - 如果divisor == 0

  • ArithmeticException - 如果结果不精确但舍入模式为UNNECESSARY,或者mc.precision为“0”且此.divideToIntgralValue(除数)的结果将要求精度大于mc.precision数字。

例子 (Example)

以下示例显示了math.BigDecimal.divideAndRemainder()方法的用法。

package cn.xnip;
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