Класс MathContext
java.lang.Object
java.math.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 не используется для округления.DECIMAL64
public static final MathContext DECIMAL64
Объект
MathContext с настройкой точности, соответствующей точности формата decimal64 из IEEE 754-2019, 16 знаков и режимом округления HALF_EVEN. Обратите внимание, что диапазон показателей decimal64 не используется для округления.DECIMAL128
public static final MathContext DECIMAL128
Объект
MathContext с настройкой точности, соответствующей точности формата decimal128 из IEEE 754-2019, 34 знаков и режимом округления HALF_EVEN. Обратите внимание, что диапазон показателей decimal64 не используется для округления.Подробное описание конструкторов
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. Это значение всегда неотрицательно.- Возвращает:
- целое число, являющееся значением настройки
precision
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
public boolean equals(Object x)
Сравнивает этот объект
MathContext с заданным объектом Object на равенство.- Переопределяет:
-
equalsв классеObject - Параметры:
-
x- объектObject, с которым сравнивается этот объектMathContext. - Возвращает:
-
trueтогда и только тогда, когда указанный объектObjectявляется объектомMathContext, имеющим ровно те же настройки, что и этот объект - См. также:
hashCode
public int hashCode()
Возвращает код хэша для этого объекта
MathContext.- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- код хэша для этого объекта
MathContext - См. также:
toString
public String toString()
Возвращает строковое представление этого объекта
MathContext. Возвращаемая строка представляет настройки объекта MathContext в виде двух слов, разделённых пробелом (разделенных одним пробелом, '\u0020', без начальных и конечных пробелов), как следует: - Строка
"precision=", за которой следует значение настройки точности в виде строкового числа, как если бы оно было сгенерировано методомInteger.toString. - Строка
"roundingMode=", за которой следует значение настройкиroundingModeкак слово. Это слово будет совпадать с именем соответствующей публичной константы в перечисленииRoundingMode.
Например:
precision=9 roundingMode=HALF_UPДополнительные слова могут быть добавлены к результату
toString в будущем, если к этому классу будут добавлены другие свойства.- Переопределяет:
-
toStringв классеObject - Возвращает:
- строка, представляющая настройки контекста
© 1993, 2023, 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://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/math/MathContext.html