Java-math-bigdecimal-setscale-roundingmode
提供:Dev Guides
Java.math.BigDecimal.setScale()メソッド
説明
- java.math.BigDecimal.setScale(int newScale、int roundingMode)*は、指定された値のスケールを持つBigDecimalを返します。そのスケールなしの値は、このBigDecimalのスケールなしの値を適切な10の累乗で乗算または除算して決定します全体的な価値。
操作によってスケールが縮小される場合、スケールされていない値は(乗算ではなく)分割する必要があり、値は変更される場合があります。 ここでは、指定された丸めモードが除算に適用されます。
BigDecimalオブジェクトは不変であるため、このメソッドを呼び出しても、setX mutateフィールドXという名前のメソッドを持つ通常の規則に反して、元のオブジェクトは変更されません。 代わりに、setScaleは適切なスケールのオブジェクトを返します。返されるオブジェクトは、新しく割り当てられる場合と割り当てられない場合があります。
宣言
次に、* java.math.BigDecimal.setScale()*メソッドの宣言を示します。
パラメーター
- newScale -返されるBigDecimal値のスケール。
- roundingMode -適用する丸めモード。
戻り値
このメソッドは、スケールが指定された値であるBigDecimalを返し、そのスケールなしの値は、このBigDecimalのスケールなしの値を適切な10の累乗で乗算または除算することで決定されます。
例外
- ArithmeticException -roundingMode == ROUND_UNNECESSARYで、指定されたスケーリング操作に丸めが必要な場合。
- IllegalArgumentException -roundingModeが有効な丸めモードを表さない場合。
例
次の例は、math.BigDecimal.setScale()メソッドの使用法を示しています。
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-