BigDecimal
Каждый объект этого класса хранит два целочисленных значения: мантиссу вещественного числа в виде объекта класса BigInteger и неотрицательный десятичный порядок числа типа int . Например, для числа 76,34862 будет храниться мантисса 7 634 862 в объекте класса BigInteger и порядок 5 как целое число типа int . Таким образом, мантисса может содержать любое количество цифр, а порядок ограничен значением константы Integer.MAX_VALUE .
BigDecimal
(BigInteger bi)объект будет хранить большое целое bi , порядок равен нулю
BigDecimal
(BigInteger mantissa, int scale)задается мантисса mantissa и неотрицательный порядок scale объекта; если порядок scale отрицателен, возникает исключительная ситуация
BigDecimal
(double d)объект будет содержать вещественное число удвоенной точности d ; если значение d бесконечно или NaN , то возникает исключительная ситуация;
BigDecimal
(String val)число задается строкой символов val , которая должна содержать запись числа по правилам языка Java.
doubleValue
()floatValue
()intValue
()longValue
()abs
()абсолютное значение объекта this
add
(BigDecimal x)операция сложения this + x
divide
(BigDecimal x, r)операция деления this / x с округлением по способу r
divide
(BigDecimal x, Integer n, r)операция деления this / x с изменением порядка и округлением по способу r
max
(BigDecimal x)наибольшее из this и x ;
min
(BigDecimal x)наименьшее из this и x
movePointLeft
(Integer n)сдвиг влево на n разрядов
movePointRight
(Integer n)сдвиг вправо на n разрядов
multiply
(BigDecimal x)операция умножения this * x
negate
()возвращает объект с обратным знаком
scale
()возвращает порядок числа
setScale
(Integer n)устанавливает новый порядок n
setScale
(Integer n, r)устанавливает новый порядок n и округляет число при необходимости по способу r
signum
()знак числа, хранящегося в объекте
subtract
(BigDecimal x)операция вычитания this — x
toBigInteger
()округление числа, хранящегося в объекте
unscaledValue
()возвращает мантиссу числа
upl
()возвращает расстояние до следующего числа
ROUND_CEILING
округление в сторону большего целого
ROUND_DOWN
округление к нулю, к меньшему по модулю целому значению
ROUND_FLOOR
округление к меньшему целому
ROUND_HALF_DOWN
округление к ближайшему целому, среднее значение округляется к меньшему целому
ROUND_HALF_EVEN
округление к ближайшему целому, среднее значение округляется к четному числу
ROUND_HALF_UP
округление к ближайшему целому, среднее значение округляется к большему целому
ROUND_UNNECESSARY
предполагается, что результат будет целым, и округление не понадобится
ROUND_UP
округление от нуля, к большему по модулю целому значению
ZERO
ONE
TEN
моделируют вещественные нуль, единицу и вещественное число десять в операциях с объектами класса BigDecimal .