クラスMathContext
java.lang.Object
java.math.MathContext
- すべての実装されたインタフェース:
Serializable
public final class MathContext extends Object implements Serializable
数値演算子(
BigDecimalクラスによって実装されるものなど)の特定のルールを記述するコンテキスト設定をカプセル化する不変オブジェクト。
ベースに依存しない設定として、次のものがあります。
precision: 演算に使用する桁数。結果はこの精度に丸められるroundingMode:RoundingModeオブジェクト。丸め処理のためのアルゴリズムを指定する
- 導入されたバージョン:
- 1.5
- 外部仕様
- 関連項目:
-
フィールドのサマリー
フィールド修飾子と型フィールド説明static final MathContextIEEE 754-2019 decimal128形式、34桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。static final MathContextIEEE 754-2019 decimal32形式、7桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。static final MathContextIEEE 754-2019 decimal64形式、16桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。static final MathContext無制限の精度での計算に必要な値が設定されているMathContextオブジェクトです。 -
コンストラクタのサマリー
コンストラクタコンストラクタ説明MathContext(int setPrecision) 指定の精度とHALF_UP丸めモードの新しいMathContextを構築します。MathContext(int setPrecision, RoundingMode setRoundingMode) 指定の精度と丸めモードの新しいMathContextを構築します。MathContext(String val) 文字列から新しいMathContextを構築します。 -
メソッドのサマリー
-
フィールド詳細
-
UNLIMITED
public static final MathContext UNLIMITED無制限の精度での計算に必要な値が設定されているMathContextオブジェクトです。 設定値は次のとおりです。precision=0 roundingMode=HALF_UP -
DECIMAL32
public static final MathContext DECIMAL32IEEE 754-2019 decimal32形式、7桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。 decimal32 (最小指数 -95、最大指数96)の指数範囲は、丸めには使用されません。 -
DECIMAL64
public static final MathContext DECIMAL64IEEE 754-2019 decimal64形式、16桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。 decimal64 (最小指数 -383、最大指数384)の指数範囲は、丸めには使用されません。 -
DECIMAL128
public static final MathContext DECIMAL128IEEE 754-2019 decimal128形式、34桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。 decimal128 ( -6143の最小指数、最大指数6144)の指数範囲は、丸めには使用されません。
-
-
コンストラクタの詳細
-
MathContext
public MathContext(int setPrecision) 指定の精度とHALF_UP丸めモードの新しいMathContextを構築します。- パラメータ:
setPrecision- 負の数以外のint精度設定。- スロー:
IllegalArgumentException-setPrecisionパラメータが0未満の場合。
-
MathContext
public MathContext(int setPrecision, RoundingMode setRoundingMode) 指定の精度と丸めモードの新しいMathContextを構築します。- パラメータ:
setPrecision- 負の数以外のint精度設定。setRoundingMode- 使用する丸めモード。- スロー:
IllegalArgumentException-setPrecisionパラメータが0未満の場合。NullPointerException- 丸めモード引数がnullの場合
-
MathContext
public MathContext(String val) 文字列から新しいMathContextを構築します。 文字列の形式は、toString()メソッドによって生成された形式である必要があります。文字列の精度部分が範囲外(
< 0)の場合、またはtoString()メソッドによって生成された形式の文字列でない場合、IllegalArgumentExceptionがスローされます。- パラメータ:
val- 解析される文字列- スロー:
IllegalArgumentException- 精度部分が範囲外の場合、または形式が不正な場合NullPointerException- 引数がnullの場合
-
-
メソッドの詳細
-
getPrecision
public int getPrecision()precision設定を返します。 この値は常に負以外です。- 戻り値:
precision設定の値であるint
-
getRoundingMode
public RoundingMode getRoundingMode()roundingMode設定を返します。 これは、RoundingMode.CEILING、RoundingMode.DOWN、RoundingMode.FLOOR、RoundingMode.HALF_DOWN、RoundingMode.HALF_EVEN、RoundingMode.HALF_UP、RoundingMode.UNNECESSARY、RoundingMode.UPのいずれかである必要があります。- 戻り値:
roundingMode設定の値であるRoundingModeオブジェクト
-
equals
-
hashCode
-
toString
public String toString()このMathContextの文字列表現を返します。 返されるStringは、次のように、MathContextオブジェクトの設定を2つのスペース区切りの単語(1つのスペース文字'\u0020'で区切られ、先頭または末尾の空白なし)として表します:-
文字列
"precision="。直後に精度設定値として、Integer.toStringメソッドによって生成されたかのような数値文字列が続きます。 -
文字列
"roundingMode="。直後に1単語のroundingMode設定値が続きます。 この単語は、RoundingMode列挙型内の対応するpublic定数の名前と一致します。
たとえば、
precision=9 roundingMode=HALF_UP
将来、このクラスにプロパティが追加された場合は、toStringの結果に単語が追加されます。 -
文字列
-