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を構築します。
- 
メソッドのサマリー
- 
フィールド詳細- 
UNLIMITEDpublic static final MathContext UNLIMITED無制限の精度での計算に必要な値が設定されているMathContextオブジェクトです。 設定値は次のとおりです。precision=0 roundingMode=HALF_UP
- 
DECIMAL32public static final MathContext DECIMAL32IEEE 754-2019 decimal32形式、7桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。 decimal32の指数範囲は端数処理に使用されないことに注意してください。
- 
DECIMAL64public static final MathContext DECIMAL64IEEE 754-2019 decimal64形式、16桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。 decimal64の指数範囲は端数処理に使用されないことに注意してください。
- 
DECIMAL128public static final MathContext DECIMAL128IEEE 754-2019 decimal128形式、34桁および端数処理モードHALF_EVENの精度と一致する精度設定を持つMathContextオブジェクト。 decimal64の指数範囲は端数処理に使用されないことに注意してください。
 
- 
- 
コンストラクタの詳細- 
MathContextpublic MathContext(int setPrecision) 指定の精度とHALF_UP丸めモードの新しいMathContextを構築します。- パラメータ:
- setPrecision- 負の数以外の- int精度設定。
- 例外:
- IllegalArgumentException-- setPrecisionパラメータが0未満の場合。
 
- 
MathContextpublic MathContext(int setPrecision, RoundingMode setRoundingMode) 指定の精度と丸めモードの新しいMathContextを構築します。- パラメータ:
- setPrecision- 負の数以外の- int精度設定。
- setRoundingMode- 使用する丸めモード。
- 例外:
- IllegalArgumentException-- setPrecisionパラメータが0未満の場合。
- NullPointerException- 丸めモード引数が- nullの場合
 
- 
MathContextpublic MathContext(String val) 文字列から新しいMathContextを構築します。 文字列の形式は、toString()メソッドによって生成された形式である必要があります。文字列の精度部分が範囲外( < 0)の場合、またはtoString()メソッドによって生成された形式の文字列でない場合、IllegalArgumentExceptionがスローされます。- パラメータ:
- val- 解析される文字列
- 例外:
- IllegalArgumentException- 精度部分が範囲外の場合、または形式が不正な場合
- NullPointerException- 引数が- nullの場合
 
 
- 
- 
メソッドの詳細- 
getPrecisionpublic int getPrecision()precision設定を返します。 この値は常に負以外です。- 戻り値:
- precision設定の値である- int
 
- 
getRoundingModepublic 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
- 
toStringpublic String toString()このMathContextの文字列表現を返します。 返されるStringは、次のように、MathContextオブジェクトの設定を2つのスペース区切りの単語(1つのスペース文字'\u0020'で区切られ、先頭または末尾の空白なし)として表します:- 
 文字列"precision="。直後に精度設定値として、Integer.toStringメソッドによって生成されたかのような数値文字列が続きます。
- 
 文字列"roundingMode="。直後に1単語のroundingMode設定値が続きます。 この単語は、RoundingMode列挙型内の対応するpublic定数の名前と一致します。
 たとえば、 precision=9 roundingMode=HALF_UP 将来、このクラスにプロパティが追加された場合は、toStringの結果に単語が追加されます。
- 
 文字列
 
-