public final class Decimal0f extends AbstractImmutableDecimal<Scale0f,Decimal0f>
All methods for this class throw NullPointerException when passed a
null object reference for any input parameter.
| Modifier and Type | Field and Description |
|---|---|
static Decimal0f |
BILLION
The
Decimal0f constant 109. |
static DecimalArithmetic |
DEFAULT_ARITHMETIC
Default arithmetic for
Decimal0f performing unchecked operations with rounding mode
HALF_UP. |
static DecimalArithmetic |
DEFAULT_CHECKED_ARITHMETIC
Default arithmetic for
Decimal0f performing checked operations with rounding mode
HALF_UP. |
static Decimal0f |
EIGHT
The
Decimal0f constant 8. |
static Factory0f |
FACTORY
Factory constant for
Decimal0f returned by getFactory(). |
static Decimal0f |
FIVE
The
Decimal0f constant 5. |
static Decimal0f |
FOUR
The
Decimal0f constant 4. |
static Decimal0f |
HUNDRED
The
Decimal0f constant 100. |
static Decimal0f |
MAX_INTEGER_VALUE
A constant holding the maximum integer value a
Decimal0f
can have, 9223372036854775807. |
static Decimal0f |
MAX_VALUE
A constant holding the maximum value a
Decimal0f can have,
9223372036854775807. |
static Scale0f |
METRICS
Scale metrics constant for
Decimal0f returned by getScaleMetrics(). |
static Decimal0f |
MILLION
The
Decimal0f constant 106. |
static Decimal0f |
MIN_INTEGER_VALUE
A constant holding the minimum integer value a
Decimal0f
can have, -9223372036854775808. |
static Decimal0f |
MIN_VALUE
A constant holding the minimum value a
Decimal0f can have,
-9223372036854775807. |
static Decimal0f |
MINUS_ONE
The
Decimal0f constant -1. |
static Decimal0f |
NINE
The
Decimal0f constant 9. |
static Decimal0f |
ONE
The
Decimal0f constant 1. |
static long |
ONE_UNSCALED
The unscaled long value that represents one.
|
static Decimal0f |
QUADRILLION
The
Decimal0f constant 1015. |
static Decimal0f |
QUINTILLION
The
Decimal0f constant 1018. |
static int |
SCALE
Scale value 0 for
Decimal0f returned by getScale(). |
static Decimal0f |
SEVEN
The
Decimal0f constant 7. |
static Decimal0f |
SIX
The
Decimal0f constant 6. |
static Decimal0f |
TEN
The
Decimal0f constant 10. |
static Decimal0f |
THOUSAND
The
Decimal0f constant 1000. |
static Decimal0f |
THREE
The
Decimal0f constant 3. |
static Decimal0f |
TRILLION
The
Decimal0f constant 1012. |
static Decimal0f |
TWO
The
Decimal0f constant 2. |
static Decimal0f |
ULP
A constant holding the smallest positive value a
Decimal0f
can have, 10-0=1. |
static Decimal0f |
ZERO
The
Decimal0f constant zero. |
| Constructor and Description |
|---|
Decimal0f(String value)
Translates the string representation of a
Decimal into a
Decimal0f. |
| Modifier and Type | Method and Description |
|---|---|
protected Decimal0f |
create(long unscaled)
Returns a new
Decimal whose value is
(unscaled × 10-scale). |
protected Decimal0f[] |
createArray(int length)
Returns a new
Decimal array of the specified length. |
protected Decimal0f |
createOrAssign(long unscaled)
Returns this or a new
Decimal whose value is
(unscaled × 10-scale). |
protected DecimalArithmetic |
getDefaultArithmetic()
Returns the default arithmetic performing unchecked operations with
rounding mode
HALF_UP. |
protected DecimalArithmetic |
getDefaultCheckedArithmetic()
Returns the default arithmetic performing checked operations with
rounding mode
HALF_UP. |
Factory0f |
getFactory()
Returns the factory that can be used to create other Decimal values of the same scale as
this Decimal. |
protected DecimalArithmetic |
getRoundingDownArithmetic()
Returns the arithmetic performing unchecked operations with rounding mode
DOWN. |
protected DecimalArithmetic |
getRoundingFloorArithmetic()
Returns the arithmetic performing unchecked operations with rounding mode
FLOOR. |
protected DecimalArithmetic |
getRoundingHalfEvenArithmetic()
Returns the arithmetic performing unchecked operations with rounding mode
HALF_EVEN. |
protected DecimalArithmetic |
getRoundingUnnecessaryArithmetic()
Returns the arithmetic performing unchecked operations with rounding mode
UNNECESSARY. |
int |
getScale()
Returns the scale associated with this Decimal.
|
Scale0f |
getScaleMetrics()
Returns the metrics associated with the scale of this Decimal.
|
Multipliable0f |
multiplyExact()
Returns this
Decimal as a multipliable factor for typed
exact multiplication. |
protected Decimal0f |
self()
Returns
this decimal value as concrete implementation subtype. |
Decimal0f |
toImmutableDecimal()
If this
Decimal value is already an ImmutableDecimal it is simply returned. |
MutableDecimal0f |
toMutableDecimal()
If this
Decimal value is already a MutableDecimal it is simply returned. |
static Decimal0f |
valueOf(BigDecimal value)
Returns a
Decimal0f whose value is calculated by rounding
the specified BigDecimal argument to scale 0 using
HALF_UP rounding. |
static Decimal0f |
valueOf(BigDecimal value,
RoundingMode roundingMode)
Returns a
Decimal0f whose value is calculated by rounding
the specified BigDecimal argument to scale 0 using
the specified roundingMode. |
static Decimal0f |
valueOf(BigInteger value)
Returns a
Decimal0f whose value is numerically equal to that of
the specified BigInteger value. |
static Decimal0f |
valueOf(Decimal<?> value)
|
static Decimal0f |
valueOf(Decimal<?> value,
RoundingMode roundingMode)
Returns a
Decimal0f whose value is calculated by rounding
the specified Decimal argument to scale 0 using
the specified roundingMode. |
static Decimal0f |
valueOf(double value)
Returns a
Decimal0f whose value is calculated by
rounding the specified double argument to scale 0
using HALF_UP rounding. |
static Decimal0f |
valueOf(double value,
RoundingMode roundingMode)
Returns a
Decimal0f whose value is calculated by
rounding the specified double argument to scale 0
using the specified roundingMode. |
static Decimal0f |
valueOf(float value)
Returns a
Decimal0f whose value is calculated by
rounding the specified float argument to scale 0
using HALF_UP rounding. |
static Decimal0f |
valueOf(float value,
RoundingMode roundingMode)
Returns a
Decimal0f whose value is calculated by
rounding the specified float argument to scale 0
using the specified roundingMode. |
static Decimal0f |
valueOf(long value)
Returns a
Decimal0f whose value is numerically equal to
that of the specified long value. |
static Decimal0f |
valueOf(String value)
Translates the string representation of a
Decimal into a
Decimal0f. |
static Decimal0f |
valueOf(String value,
RoundingMode roundingMode)
Translates the string representation of a
Decimal into a
Decimal0f. |
static Decimal0f |
valueOfUnscaled(long unscaledValue)
Returns a
Decimal0f whose value is numerically equal to
(unscaledValue × 10-0). |
static Decimal0f |
valueOfUnscaled(long unscaledValue,
int scale)
Returns a
Decimal0f whose value is numerically equal to
(unscaledValue × 10-scale). |
static Decimal0f |
valueOfUnscaled(long unscaledValue,
int scale,
RoundingMode roundingMode)
Returns a
Decimal0f whose value is numerically equal to
(unscaledValue × 10-scale). |
max, min, multiplyExact, scale, scale, scale, scale, toString, unscaledValueabs, abs, add, add, add, add, add, add, add, add, addSquared, addSquared, addSquared, addUnscaled, addUnscaled, addUnscaled, addUnscaled, addUnscaled, avg, avg, byteValueExact, compareTo, compareToNumerically, divide, divide, divide, divide, divide, divide, divide, divide, divideAndRemainder, divideAndRemainder, divideBy, divideBy, divideBy, divideByPowerOfTen, divideByPowerOfTen, divideByPowerOfTen, divideExact, divideToIntegralValue, divideToIntegralValue, divideToLongValue, divideToLongValue, divideTruncate, divideUnscaled, divideUnscaled, divideUnscaled, divideUnscaled, divideUnscaled, divideUnscaled, doubleValue, doubleValue, equals, floatValue, floatValue, fractionalPart, getArithmeticFor, getArithmeticFor, getArithmeticFor, getCheckedArithmeticFor, hashCode, integralPart, intValue, intValueExact, invert, invert, invert, isBetweenZeroAndMinusOne, isBetweenZeroAndOne, isEqualTo, isEqualToNumerically, isGreaterThan, isGreaterThanOrEqualTo, isIntegral, isIntegralPartZero, isLessThan, isLessThanOrEqualTo, isMinusOne, isNegative, isNonNegative, isNonPositive, isOne, isPositive, isUlp, isZero, longValue, longValue, longValueExact, max, max, min, min, multiply, multiply, multiply, multiply, multiply, multiply, multiply, multiplyBy, multiplyBy, multiplyBy, multiplyByPowerOfTen, multiplyByPowerOfTen, multiplyByPowerOfTen, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, negate, negate, pow, pow, pow, remainder, round, round, round, shiftLeft, shiftLeft, shiftLeft, shiftRight, shiftRight, shiftRight, shortValueExact, signum, sqrt, sqrt, square, square, square, subtract, subtract, subtract, subtract, subtract, subtract, subtract, subtract, subtractSquared, subtractSquared, subtractSquared, subtractUnscaled, subtractUnscaled, subtractUnscaled, subtractUnscaled, subtractUnscaled, toBigDecimal, toBigDecimal, toBigInteger, toBigInteger, toBigIntegerExactbyteValue, shortValueclone, finalize, getClass, notify, notifyAll, wait, wait, waitabs, abs, add, add, add, add, add, add, add, add, addSquared, addSquared, addSquared, addUnscaled, addUnscaled, addUnscaled, addUnscaled, addUnscaled, avg, avg, divide, divide, divide, divide, divide, divide, divide, divide, divideAndRemainder, divideAndRemainder, divideBy, divideBy, divideBy, divideByPowerOfTen, divideByPowerOfTen, divideByPowerOfTen, divideExact, divideToIntegralValue, divideToIntegralValue, divideTruncate, divideUnscaled, divideUnscaled, divideUnscaled, divideUnscaled, divideUnscaled, divideUnscaled, fractionalPart, integralPart, invert, invert, invert, multiply, multiply, multiply, multiply, multiply, multiply, multiply, multiplyBy, multiplyBy, multiplyBy, multiplyByPowerOfTen, multiplyByPowerOfTen, multiplyByPowerOfTen, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, multiplyUnscaled, negate, negate, pow, pow, pow, remainder, round, round, round, shiftLeft, shiftLeft, shiftLeft, shiftRight, shiftRight, shiftRight, sqrt, sqrt, square, square, square, subtract, subtract, subtract, subtract, subtract, subtract, subtract, subtract, subtractSquared, subtractSquared, subtractSquared, subtractUnscaled, subtractUnscaled, subtractUnscaled, subtractUnscaled, subtractUnscaledbyteValue, byteValueExact, compareTo, compareToNumerically, divideToLongValue, divideToLongValue, doubleValue, doubleValue, equals, floatValue, floatValue, hashCode, intValue, intValueExact, isBetweenZeroAndMinusOne, isBetweenZeroAndOne, isEqualTo, isEqualToNumerically, isGreaterThan, isGreaterThanOrEqualTo, isIntegral, isIntegralPartZero, isLessThan, isLessThanOrEqualTo, isMinusOne, isNegative, isNonNegative, isNonPositive, isOne, isPositive, isUlp, isZero, longValue, longValue, longValueExact, max, min, shortValue, shortValueExact, signum, toBigDecimal, toBigDecimal, toBigInteger, toBigInteger, toBigIntegerExactpublic static final int SCALE
Decimal0f returned by getScale().public static final Scale0f METRICS
Decimal0f returned by getScaleMetrics().public static final Factory0f FACTORY
Decimal0f returned by getFactory().public static final DecimalArithmetic DEFAULT_ARITHMETIC
Decimal0f performing unchecked operations with rounding mode
HALF_UP.public static final DecimalArithmetic DEFAULT_CHECKED_ARITHMETIC
Decimal0f performing checked operations with rounding mode
HALF_UP.public static final long ONE_UNSCALED
public static final Decimal0f ULP
Decimal0f
can have, 10-0=1.public static final Decimal0f QUADRILLION
Decimal0f constant 1015.public static final Decimal0f QUINTILLION
Decimal0f constant 1018.public static final Decimal0f MAX_VALUE
Decimal0f can have,
9223372036854775807.public static final Decimal0f MAX_INTEGER_VALUE
Decimal0f
can have, 9223372036854775807.public static final Decimal0f MIN_VALUE
Decimal0f can have,
-9223372036854775807.public static final Decimal0f MIN_INTEGER_VALUE
Decimal0f
can have, -9223372036854775808.public Decimal0f(String value)
Decimal into a
Decimal0f. The string representation consists of an
optional sign, '+' or '-' , followed by a sequence of
zero or more decimal digits ("the integer"), optionally followed by a
fraction.
The fraction consists of a decimal point followed by zero or more decimal
digits. The string must contain at least one digit in either the integer
or the fraction. If the fraction contains more than 0 digits, the
value is rounded using HALF_UP rounding. An
exception is thrown if the value is too large to be represented as a
Decimal0f.
value - String value to convert into a Decimal0fNumberFormatException - if value does not represent a valid Decimal
or if the value is too large to be represented as a
Decimal0fpublic final Scale0f getScaleMetrics()
Decimallong value underlying this Decimal.ScaleMetrics.getScale(),
ScaleMetrics.getScaleFactor()public final int getScale()
Decimallong value underlying this Decimal.
If the scale is f then the value represented by a Decimal instance is
(unscaledValue × 10-f).
This method is a shortcut for getScaleMetrics().getScale().
Decimal.getScaleMetrics(),
ScaleMetrics.getScale(),
Decimal.unscaledValue()public final Factory0f getFactory()
Decimalthis Decimal.protected final Decimal0f self()
AbstractDecimalthis decimal value as concrete implementation subtype.self in class AbstractDecimal<Scale0f,Decimal0f>thisprotected final DecimalArithmetic getDefaultArithmetic()
AbstractDecimalHALF_UP.getDefaultArithmetic in class AbstractDecimal<Scale0f,Decimal0f>HALF_UP
rounding and UNCHECKED overflow
modeprotected final DecimalArithmetic getDefaultCheckedArithmetic()
AbstractDecimalHALF_UP.getDefaultCheckedArithmetic in class AbstractDecimal<Scale0f,Decimal0f>HALF_UP
rounding and CHECKED overflow modeprotected final DecimalArithmetic getRoundingDownArithmetic()
AbstractDecimalDOWN.getRoundingDownArithmetic in class AbstractDecimal<Scale0f,Decimal0f>DOWN rounding and
UNCHECKED overflow modeprotected final DecimalArithmetic getRoundingFloorArithmetic()
AbstractDecimalFLOOR.getRoundingFloorArithmetic in class AbstractDecimal<Scale0f,Decimal0f>FLOOR rounding and
UNCHECKED overflow modeprotected final DecimalArithmetic getRoundingHalfEvenArithmetic()
AbstractDecimalHALF_EVEN.getRoundingHalfEvenArithmetic in class AbstractDecimal<Scale0f,Decimal0f>HALF_UP rounding and
UNCHECKED overflow modeprotected final DecimalArithmetic getRoundingUnnecessaryArithmetic()
AbstractDecimalUNNECESSARY.getRoundingUnnecessaryArithmetic in class AbstractDecimal<Scale0f,Decimal0f>UNNECESSARY
rounding and UNCHECKED overflow
modepublic static Decimal0f valueOf(long value)
Decimal0f whose value is numerically equal to
that of the specified long value. An exception is thrown if the
specified value is too large to be represented as a Decimal0f.value - long value to convert into a Decimal0fDecimal0f value numerically equal to the specified
long valueIllegalArgumentException - if value is too large to be represented as a
Decimal0fpublic static Decimal0f valueOf(float value)
Decimal0f whose value is calculated by
rounding the specified float argument to scale 0
using HALF_UP rounding. An exception is thrown
if the specified value is too large to be represented as a Decimal0f.value - float value to convert into a Decimal0fDecimal0f calculated as: roundHALF_UP(value)IllegalArgumentException - if value is NaN or infinite or if the magnitude is
too large for the float to be represented as a Decimal0fpublic static Decimal0f valueOf(float value, RoundingMode roundingMode)
Decimal0f whose value is calculated by
rounding the specified float argument to scale 0
using the specified roundingMode. An exception is thrown
if the specified value is too large to be represented as a Decimal0f.value - float value to convert into a Decimal0froundingMode - the rounding mode to apply during the conversion if necessaryDecimal0f calculated as: round(value)IllegalArgumentException - if value is NaN or infinite or if the magnitude is
too large for the float to be represented as a Decimal0fArithmeticException - if roundingMode==UNNECESSARY and rounding is
necessarypublic static Decimal0f valueOf(double value)
Decimal0f whose value is calculated by
rounding the specified double argument to scale 0
using HALF_UP rounding. An exception is thrown
if the specified value is too large to be represented as a Decimal0f.value - double value to convert into a Decimal0fDecimal0f calculated as: roundHALF_UP(value)IllegalArgumentException - if value is NaN or infinite or if the magnitude is
too large for the double to be represented as a Decimal0fpublic static Decimal0f valueOf(double value, RoundingMode roundingMode)
Decimal0f whose value is calculated by
rounding the specified double argument to scale 0
using the specified roundingMode. An exception is thrown
if the specified value is too large to be represented as a Decimal0f.value - double value to convert into a Decimal0froundingMode - the rounding mode to apply during the conversion if necessaryDecimal0f calculated as: round(value)IllegalArgumentException - if value is NaN or infinite or if the magnitude is
too large for the double to be represented as a Decimal0fArithmeticException - if roundingMode==UNNECESSARY and rounding is
necessarypublic static Decimal0f valueOf(BigInteger value)
Decimal0f whose value is numerically equal to that of
the specified BigInteger value. An exception is thrown if the
specified value is too large to be represented as a Decimal0f.value - BigInteger value to convert into a Decimal0fDecimal0f value numerically equal to the specified big
integer valueIllegalArgumentException - if value is too large to be represented as a Decimal0fpublic static Decimal0f valueOf(BigDecimal value)
Decimal0f whose value is calculated by rounding
the specified BigDecimal argument to scale 0 using
HALF_UP rounding. An exception is thrown if the
specified value is too large to be represented as a Decimal0f.value - BigDecimal value to convert into a Decimal0fDecimal0f calculated as: roundHALF_UP(value)IllegalArgumentException - if value is too large to be represented as a Decimal0fpublic static Decimal0f valueOf(BigDecimal value, RoundingMode roundingMode)
Decimal0f whose value is calculated by rounding
the specified BigDecimal argument to scale 0 using
the specified roundingMode. An exception is thrown if the
specified value is too large to be represented as a Decimal0f.value - BigDecimal value to convert into a Decimal0froundingMode - the rounding mode to apply during the conversion if necessaryDecimal0f calculated as: round(value)IllegalArgumentException - if value is too large to be represented as a Decimal0fArithmeticException - if roundingMode==UNNECESSARY and rounding is
necessarypublic static Decimal0f valueOf(Decimal<?> value)
Decimal0f whose value is calculated by rounding
the specified Decimal argument to scale 0 using
HALF_UP rounding. An exception is thrown if the
specified value is too large to be represented as a Decimal0f.value - Decimal value to convert into a Decimal0fDecimal0f calculated as: roundHALF_UP(value)IllegalArgumentException - if value is too large to be represented as a Decimal0fpublic static Decimal0f valueOf(Decimal<?> value, RoundingMode roundingMode)
Decimal0f whose value is calculated by rounding
the specified Decimal argument to scale 0 using
the specified roundingMode. An exception is thrown if the
specified value is too large to be represented as a Decimal0f.value - Decimal value to convert into a Decimal0froundingMode - the rounding mode to apply during the conversion if necessaryDecimal0f calculated as: round(value)IllegalArgumentException - if value is too large to be represented as a Decimal0fArithmeticException - if roundingMode==UNNECESSARY and rounding is
necessarypublic static Decimal0f valueOf(String value)
Decimal into a
Decimal0f. The string representation consists of an
optional sign, '+' or '-' , followed by a sequence of
zero or more decimal digits ("the integer"), optionally followed by a
fraction.
The fraction consists of a decimal point followed by zero or more decimal
digits. The string must contain at least one digit in either the integer
or the fraction. If the fraction contains more than 0 digits, the
value is rounded using HALF_UP rounding. An
exception is thrown if the value is too large to be represented as a
Decimal0f.
value - String value to convert into a Decimal0fDecimal0f calculated as: roundHALF_UP(value)NumberFormatException - if value does not represent a valid Decimal
or if the value is too large to be represented as a
Decimal0fpublic static Decimal0f valueOf(String value, RoundingMode roundingMode)
Decimal into a
Decimal0f. The string representation consists of an
optional sign, '+' or '-' , followed by a sequence of
zero or more decimal digits ("the integer"), optionally followed by a
fraction.
The fraction consists of a decimal point followed by zero or more decimal
digits. The string must contain at least one digit in either the integer
or the fraction. If the fraction contains more than 0 digits, the
value is rounded using the specified roundingMode. An exception
is thrown if the value is too large to be represented as a Decimal0f.
value - String value to convert into a Decimal0froundingMode - the rounding mode to apply if the fraction contains more than
0 digitsDecimal0f calculated as: round(value)NumberFormatException - if value does not represent a valid Decimal
or if the value is too large to be represented as a
Decimal0fArithmeticException - if roundingMode==UNNECESSARY and rounding is
necessarypublic static Decimal0f valueOfUnscaled(long unscaledValue)
Decimal0f whose value is numerically equal to
(unscaledValue × 10-0).unscaledValue - unscaled value to convert into a Decimal0fDecimal0f calculated as:
unscaledValue × 10-0public static Decimal0f valueOfUnscaled(long unscaledValue, int scale)
Decimal0f whose value is numerically equal to
(unscaledValue × 10-scale). The result is
rounded to scale 0 using HALF_UP
rounding. An exception is thrown if the specified value is too large
to be represented as a Decimal0f.unscaledValue - unscaled value to convert into a Decimal0fscale - the scale to apply to unscaledValueDecimal0f calculated as:
roundHALF_UP(unscaledValue × 10-scale)IllegalArgumentException - if the specified value is too large to be represented as a
Decimal0fpublic static Decimal0f valueOfUnscaled(long unscaledValue, int scale, RoundingMode roundingMode)
Decimal0f whose value is numerically equal to
(unscaledValue × 10-scale). The result
is rounded to scale 0 using the specified roundingMode.
An exception is thrown if the specified value is too large to be
represented as a Decimal0f.unscaledValue - unscaled value to convert into a Decimal0scale - the scale to apply to unscaledValueroundingMode - the rounding mode to apply during the conversion if necessaryDecimal0f calculated as:
round(unscaledValue × 10-scale)IllegalArgumentException - if the specified value is too large to be represented as a Decimal0fprotected Decimal0f createOrAssign(long unscaled)
AbstractDecimalDecimal whose value is
(unscaled × 10-scale).
The returned value is a new instance if this decimal is an
ImmutableDecimal. If it is a MutableDecimal then its
internal state is altered and this is returned as result now
representing (unscaled × 10-scale).
createOrAssign in class AbstractDecimal<Scale0f,Decimal0f>unscaled - unscaled value to be returned as a Decimalprotected Decimal0f create(long unscaled)
AbstractDecimalDecimal whose value is
(unscaled × 10-scale).create in class AbstractDecimal<Scale0f,Decimal0f>unscaled - unscaled value to be returned as a Decimalprotected Decimal0f[] createArray(int length)
AbstractDecimalDecimal array of the specified length.createArray in class AbstractDecimal<Scale0f,Decimal0f>length - the length of the array to returnnew D[length]public Multipliable0f multiplyExact()
Decimal as a multipliable factor for typed
exact multiplication. The second factor is passed to one of the
by(..) methods of the returned multiplier. The scale of
the result is the sum of the scales of this Decimal and the
second factor passed to the by(..) method.
The method is similar to multiplyExact(Decimal) but the result
is retrieved in exact typed form with the correct result scale.
For instance one can write:
Decimal2f product = this.multiplyExact().by(Decimal2f.FIVE);
public MutableDecimal0f toMutableDecimal()
DecimalDecimal value is already a MutableDecimal it is simply returned. Otherwise a new mutable
value with the same scale and numerical value as this Decimal is created and returned.this if mutable and a new MutableDecimal with the same scale and value as this
Decimal otherwisepublic Decimal0f toImmutableDecimal()
DecimalDecimal value is already an ImmutableDecimal it is simply returned. Otherwise a new
immutable value with the same scale and numerical value as this Decimal is created and returned.this if immutable and a new ImmutableDecimal with the same scale and value as
this Decimal otherwise