Класс MathContext
- Все реализованные интерфейсы:
Serializable
public final class MathContext extends Object implements Serializable
BigDecimal. Независимые от основания параметры:
-
precision: количество цифр, используемых для операции; результаты округляются до этой точности -
roundingMode: объектRoundingMode, который задаёт алгоритм округления.
- С момента:
- 1.5
- Внешние спецификации
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final MathContext |
DECIMAL128 |
Объект MathContext с параметром точности, соответствующим точности формата decimal128 IEEE 754-2019, 34 цифры и режимом округления HALF_EVEN. |
static final MathContext |
DECIMAL32 |
Объект MathContext с параметром точности, соответствующим точности формата decimal32 IEEE 754-2019, 7 цифры и режимом округления HALF_EVEN. |
static final MathContext |
DECIMAL64 |
Объект MathContext с параметром точности, соответствующим точности формата decimal64 IEEE 754-2019, 16 цифры и режимом округления HALF_EVEN. |
static final MathContext |
UNLIMITED |
Объект MathContext, параметры которого имеют значения, необходимые для арифметики с неограниченной точностью. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
MathContext |
Создаёт новый MathContext с указанной точностью и режимом округления HALF_UP. |
MathContext |
Создаёт новый MathContext с указанной точностью и режимом округления. |
MathContext |
Создаёт новый MathContext из строки. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Сравнивает этот MathContext с указанным Object на равенство. |
int |
getPrecision() |
Возвращает значение параметра precision. |
RoundingMode |
getRoundingMode() |
Возвращает значение параметра roundingMode. |
int |
hashCode() |
Возвращает хэш-код для этого MathContext. |
String |
toString() |
Возвращает строковое представление этого MathContext. |
Подробное описание полей
UNLIMITED
public static final MathContext UNLIMITED
MathContext, параметры которого настроены для арифметики с неограниченной точностью. Значения настроек: precision=0 roundingMode=HALF_UP
DECIMAL32
public static final MathContext DECIMAL32
MathContext с настройкой точности, соответствующей формату decimal32 IEEE 754-2019, 7 цифр и режимом округления HALF_EVEN. Обратите внимание, что диапазон показателей степени decimal32 (минимальный показатель -95, максимальный 96) не используется для округления.DECIMAL64
public static final MathContext DECIMAL64
MathContext с настройкой точности, соответствующей формату decimal64 IEEE 754-2019, 16 цифр и режимом округления HALF_EVEN. Обратите внимание, что диапазон показателей степени decimal64 (минимальный показатель -383, максимальный 384) не используется для округления.DECIMAL128
public static final MathContext DECIMAL128
MathContext с настройкой точности, соответствующей формату decimal128 IEEE 754-2019, 34 цифры и режимом округления HALF_EVEN. Обратите внимание, что диапазон показателей степени decimal128 (минимальный показатель -6143, максимальный 6144) не используется для округления.Подробное описание конструкторов
MathContext
public MathContext(int setPrecision)
MathContext с заданной точностью и режимом округления HALF_UP.- Параметры:
-
setPrecision- Настройка точности (неотрицательное значение).int - Исключения:
-
IllegalArgumentException- если значение параметраsetPrecisionменьше нуля.
MathContext
public MathContext(int setPrecision, RoundingMode setRoundingMode)
MathContext с заданной точностью и режимом округления.- Параметры:
-
setPrecision- Настройка точности (неотрицательное значение).int -
setRoundingMode- Режим округления. - Исключения:
-
IllegalArgumentException- если значение параметраsetPrecisionменьше нуля. -
NullPointerException- если переданный режим округленияnull
MathContext
public MathContext(String val)
MathContext из строки. Строка должна иметь формат, аналогичный тому, который возвращает метод toString(). Исключение IllegalArgumentException возникает, если значение раздела точности в строке находится вне допустимого диапазона (< 0) или если строка не соответствует формату, возвращаемому методом toString().
- Параметры:
-
val- Строка для парсинга - Исключения:
-
IllegalArgumentException- если значение раздела точности находится вне допустимого диапазона или имеет неправильный формат -
NullPointerException- если переданная строкаnull
Подробное описание методов
getPrecision
public int getPrecision()
precision. Это значение всегда неотрицательное.- Возвращает:
- числовое значение настройки
int, соответствующееprecision
getRoundingMode
public RoundingMode getRoundingMode()
RoundingMode.CEILING, RoundingMode.DOWN, RoundingMode.FLOOR, RoundingMode.HALF_DOWN, RoundingMode.HALF_EVEN, RoundingMode.HALF_UP, RoundingMode.UNNECESSARY или RoundingMode.UP.- Возвращает:
- объект
RoundingMode, представляющий значение настройкиroundingMode
equals
public boolean equals(Object x)
MathContext с заданным объектом Object на равенство.hashCode
toString
public String toString()
MathContext. Возвращаемая строка представляет настройки объекта MathContext в виде двух слов, разделённых пробелом (без начальных и конечных пробелов), следующим образом: - Строка
"precision=", за которой следует значение настройки точности в виде числовой строки, как если бы она была сгенерирована методомInteger.toString. - Строка
"roundingMode=", за которой следует значение настройки режима округления в виде слова. Это слово будет совпадать с именем соответствующей публичной константы в перечисленииRoundingMode.
Например:
precision=9 roundingMode=HALF_UPДополнительные слова могут быть добавлены к результату метода
toString в будущем, если к этому классу будут добавлены дополнительные свойства.
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/math/MathContext.html