BigDecimalのdivideメソッドの解説

BigDecimalクラスのdivideメソッドは、2つのBigDecimalオブジェクトの除算演算を行う。そのメソッドは複数のオーバーロードがあり、ここでよく使われる形式の1つを示す。

BigDecimal divisor、スケール int、丸め方法 RoundingMode を使ってBigDecimalで割る

パラメーターの詳細

  1. 除数
  2. 小数点以下の桁数
  3. 丸めモード

戻り値:

除算の結果を表す新しいBigDecimalオブジェクトを返します。

この手法を用いる際には、以下の点に注意してください。

  1. 除算を行うと無限小数が発生する可能性があるので、除算を行う前に小数点の桁数の設定が必要です。
  2. scaleパラメータは返される小数部の桁数を指定し、返される小数部の桁数が指定されたscale値を超えた場合、指定された丸めモードに従って丸めを行います。
  3. roundingModeパラメータは、小数点を切り捨てするモードを指定し、次の選択肢があります。
  1. ゼロから離れる方向に丸めます。
  2. RoundingMode.DOWN:ゼロに近づく方向に丸める。
  3. RoundingMode.CEILING:正の無限大方向に丸める。
  4. RoundingMode.FLOOR:マイナス無限大方向に丸める。
  5. RoundingMode.HALF_UP:小数点以下の端数が 0.5 以上の場合は四捨五入。
  6. RoundingMode.HALF_DOWN:端数切り捨て
  7. RoundingMode.HALF_EVEN:銀行家丸め。切り捨て部分が5のときは、最も近い偶数に丸める。

BigDecimal を使用した除算メソッドdivide の使用例は次のとおりです。

import java.math.BigDecimal;
import java.math.RoundingMode;
public class DivideExample {
public static void main(String[] args) {
BigDecimal dividend = new BigDecimal("10");    // 被除数
BigDecimal divisor = new BigDecimal("3");      // 除数
// 将结果保留2位小数,采用四舍五入的舍入模式
BigDecimal result = dividend.divide(divisor, 2, RoundingMode.HALF_UP);
System.out.println("除法结果:" + result);    // 输出:3.33
}
}

ここで示しているコードでは、10 を 3 で割り、小数点以下 2 桁まで四捨五入して表示する結果として 3.33 が得られます。

bannerAds