Java-math-bigdecimal-divide-introundingmode-scale
提供:Dev Guides
Java.math.BigDecimal.divide()メソッド
説明
- java.math.BigDecimal.divide(BigDecimal divisor、int scale、int roundingMode)*は、値が(this/divisor)で、スケールが指定されたBigDecimalを返します。 指定したスケールで結果を生成するために丸めを実行する必要がある場合、指定した丸めモードが適用されます。
宣言
以下は* java.math.BigDecimal.divide()*メソッドの宣言です。
public BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)
パラメーター
- divisor -このBigDecimalを分割する値。
- scale -返されるBigDecimal商のスケール。
- roundingMode -適用する丸めモード。
戻り値
このメソッドは、指定されたスケールに指定されているように丸められたthis/divisorであるBigDecimalオブジェクトを返します。
例外
- ArithmeticException -除数== 0、またはroundingMode == ROUND_UNNECESSARYおよびthis.scale()が除算の結果を正確に表すには不十分な場合。
- IllegalArgumentException -roundingModeが有効な丸めモードを表さない場合。
例
次の例は、math.BigDecimal.divide()メソッドの使用法を示しています。
package com.finddevguides;
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