Java.math.BigDecimal.divide() 方法

描述

java.math.BigDecimal.divide(BigDecimal divisor, int scale, int roundingMode) 返回一个 BigDecimal,其值为 (this / divisor),其比例为指定的。 如果必须执行舍入以生成具有指定比例的结果,则应用指定的舍入模式。


声明

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

public BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)

参数

  • divisor − 此 BigDecimal 将被除以的值。

  • scale − 要返回的 BigDecimal 商的比例。

  • roundingMode − 要应用的舍入模式。


返回值

此方法返回一个 BigDecimal 对象,其值为 this / divisor 按指定比例四舍五入。


异常

  • ArithmeticException − 如果 divisor == 0 或 roundingMode == ROUND_UNNECESSARY 且 this.scale() 不足以准确表示除法的结果。

  • IllegalArgumentException − 如果 roundingMode 不代表有效的舍入模式。


示例

下面的例子展示了 math.BigDecimal.divide() 方法的使用。

package com.tutorialspoint;

import java.math.*;

public class BigDecimalDemo {

   public static void main(String[] args) {

      // create 3 BigDecimal objects
      BigDecimal bg1, bg2, bg3;

      bg1 = new BigDecimal("16");
      bg2 = new BigDecimal("3");

      // divide bg1 with bg2 with 4 scale
      // 1 specifies BigDecimal.ROUND_DOWN
      bg3 = bg1.divide(bg2, 4, 1);

      String str = "Division result is " +bg3;

      // print bg3 value
      System.out.println( str );
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

Division result is 5.3333