public final class MutableDecimal12f extends AbstractMutableDecimal<Scale12f,MutableDecimal12f> implements Cloneable
All methods for this class throw NullPointerException when passed a
null object reference for any input parameter.
| Constructor and Description |
|---|
MutableDecimal12f()
Constructs a new
MutableDecimal12f with value zero. |
MutableDecimal12f(BigDecimal value)
Constructs a
MutableDecimal12f whose value is calculated by
rounding the specified BigDecimal argument to scale 12 using
HALF_UP rounding. |
MutableDecimal12f(BigInteger value)
Constructs a
MutableDecimal12f whose value is numerically equal to
that of the specified BigInteger value. |
MutableDecimal12f(Decimal<?> value)
|
MutableDecimal12f(Decimal12f value)
Constructs a
MutableDecimal12f whose value is numerically equal to
that of the specified Decimal12f value. |
MutableDecimal12f(double value)
Constructs a
MutableDecimal12f whose value is calculated by
rounding the specified double argument to scale 12 using
HALF_UP rounding. |
MutableDecimal12f(long value)
Constructs a
MutableDecimal12f whose value is numerically equal
to that of the specified long value. |
MutableDecimal12f(String value)
Translates the string representation of a
Decimal into a
MutableDecimal12f. |
| Modifier and Type | Method and Description |
|---|---|
static MutableDecimal12f |
billionth()
Returns a new
MutableDecimal12f whose value is equal to one billionth. |
MutableDecimal12f |
clone()
Returns a clone of this mutable Decimal numerically identical to this
value.
|
protected MutableDecimal12f |
create(long unscaled)
Returns a new
Decimal whose value is
(unscaled × 10-scale). |
protected MutableDecimal12f[] |
createArray(int length)
Returns a new
Decimal array of the specified length. |
static MutableDecimal12f |
eight()
Returns a new
MutableDecimal12f whose value is equal to eight. |
static MutableDecimal12f |
five()
Returns a new
MutableDecimal12f whose value is equal to five. |
static MutableDecimal12f |
four()
Returns a new
MutableDecimal12f whose value is equal to four. |
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. |
Factory12f |
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.
|
Scale12f |
getScaleMetrics()
Returns the metrics associated with the scale of this Decimal.
|
static MutableDecimal12f |
half()
Returns a new
MutableDecimal12f whose value is equal to one half. |
static MutableDecimal12f |
hundred()
Returns a new
MutableDecimal12f whose value is equal to one hundred. |
static MutableDecimal12f |
hundredth()
Returns a new
MutableDecimal12f whose value is equal to one hundredth. |
static MutableDecimal12f |
million()
Returns a new
MutableDecimal12f whose value is equal to one million. |
static MutableDecimal12f |
millionth()
Returns a new
MutableDecimal12f whose value is equal to one millionth. |
static MutableDecimal12f |
minusOne()
Returns a new
MutableDecimal12f whose value is equal to minus one. |
Multipliable12f |
multiplyExact()
Returns this
Decimal as a multipliable factor for exact
typed exact multiplication. |
static MutableDecimal12f |
nine()
Returns a new
MutableDecimal12f whose value is equal to nine. |
static MutableDecimal12f |
one()
Returns a new
MutableDecimal12f whose value is equal to one. |
protected MutableDecimal12f |
self()
Returns
this decimal value as concrete implementation subtype. |
static MutableDecimal12f |
seven()
Returns a new
MutableDecimal12f whose value is equal to seven. |
static MutableDecimal12f |
six()
Returns a new
MutableDecimal12f whose value is equal to six. |
static MutableDecimal12f |
ten()
Returns a new
MutableDecimal12f whose value is equal to ten. |
static MutableDecimal12f |
tenth()
Returns a new
MutableDecimal12f whose value is equal to one tenth. |
static MutableDecimal12f |
thousand()
Returns a new
MutableDecimal12f whose value is equal to one thousand. |
static MutableDecimal12f |
thousandth()
Returns a new
MutableDecimal12f whose value is equal to one thousandth. |
static MutableDecimal12f |
three()
Returns a new
MutableDecimal12f whose value is equal to three. |
Decimal12f |
toImmutableDecimal()
If this
Decimal value is already an ImmutableDecimal it is simply returned. |
MutableDecimal12f |
toMutableDecimal()
If this
Decimal value is already a MutableDecimal it is simply returned. |
static MutableDecimal12f |
trillionth()
Returns a new
MutableDecimal12f whose value is equal to one trillionth. |
static MutableDecimal12f |
two()
Returns a new
MutableDecimal12f whose value is equal to two. |
static MutableDecimal12f |
ulp()
Returns a new
MutableDecimal12f whose value is equal to one ULP. |
static MutableDecimal12f |
unscaled(long unscaledValue)
Returns a new
MutableDecimal12f whose value is equal to
unscaledValue * 10-12. |
static MutableDecimal12f |
zero()
Returns a new
MutableDecimal12f whose value is equal to zero. |
createOrAssign, max, min, multiplyExact, scale, scale, scale, scale, set, set, set, set, set, set, set, set, set, set, set, set, setMinusOne, setOne, setUlp, setUnscaled, setUnscaled, setUnscaled, setZero, 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, toBigIntegerExact, toStringbyteValue, shortValuefinalize, 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, toBigIntegerExact, toStringpublic MutableDecimal12f()
MutableDecimal12f with value zero.zero()public MutableDecimal12f(String value)
Decimal into a
MutableDecimal12f. 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 12 digits, the
value is rounded using HALF_UP rounding. An
exception is thrown if the value is too large to be represented as a
MutableDecimal12f.
value - String value to convert into a MutableDecimal12fNumberFormatException - if value does not represent a valid Decimal
or if the value is too large to be represented as a
MutableDecimal12fAbstractMutableDecimal.set(String, RoundingMode)public MutableDecimal12f(long value)
MutableDecimal12f 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 MutableDecimal12f.value - long value to convert into a MutableDecimal12fIllegalArgumentException - if value is too large to be represented as a
MutableDecimal12fpublic MutableDecimal12f(double value)
MutableDecimal12f whose value is calculated by
rounding the specified double argument to scale 12 using
HALF_UP rounding. An exception is thrown if the
specified value is too large to be represented as a MutableDecimal12f.value - double value to convert into a MutableDecimal12fIllegalArgumentException - if value is NaN or infinite or if the magnitude is too large
for the double to be represented as a MutableDecimal12fAbstractMutableDecimal.set(double, RoundingMode),
AbstractMutableDecimal.set(float),
AbstractMutableDecimal.set(float, RoundingMode)public MutableDecimal12f(BigInteger value)
MutableDecimal12f 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 MutableDecimal12f.value - BigInteger value to convert into a MutableDecimal12fIllegalArgumentException - if value is too large to be represented as a MutableDecimal12fpublic MutableDecimal12f(BigDecimal value)
MutableDecimal12f whose value is calculated by
rounding the specified BigDecimal argument to scale 12 using
HALF_UP rounding. An exception is thrown if the
specified value is too large to be represented as a MutableDecimal12f.value - BigDecimal value to convert into a MutableDecimal12fIllegalArgumentException - if value is too large to be represented as a MutableDecimal12fAbstractMutableDecimal.set(BigDecimal, RoundingMode)public MutableDecimal12f(Decimal12f value)
MutableDecimal12f whose value is numerically equal to
that of the specified Decimal12f value.value - Decimal12f value to convert into a MutableDecimal12fpublic MutableDecimal12f(Decimal<?> value)
MutableDecimal12f whose value is calculated by
rounding the specified Decimal argument to scale 12 using
HALF_UP rounding. An exception is thrown if
the specified value is too large to be represented as a MutableDecimal12f.value - Decimal value to convert into a MutableDecimal12fIllegalArgumentException - if value is too large to be represented as a MutableDecimal12fAbstractMutableDecimal.set(Decimal, RoundingMode)protected final MutableDecimal12f create(long unscaled)
AbstractDecimalDecimal whose value is
(unscaled × 10-scale).create in class AbstractDecimal<Scale12f,MutableDecimal12f>unscaled - unscaled value to be returned as a Decimalprotected final MutableDecimal12f[] createArray(int length)
AbstractDecimalDecimal array of the specified length.createArray in class AbstractDecimal<Scale12f,MutableDecimal12f>length - the length of the array to returnnew D[length]protected final MutableDecimal12f self()
AbstractDecimalthis decimal value as concrete implementation subtype.self in class AbstractDecimal<Scale12f,MutableDecimal12f>thispublic final Scale12f getScaleMetrics()
Decimallong value underlying this Decimal.getScaleMetrics in interface Decimal<Scale12f>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().
getScale in interface Decimal<Scale12f>Decimal.getScaleMetrics(),
ScaleMetrics.getScale(),
Decimal.unscaledValue()public Factory12f getFactory()
Decimalthis Decimal.getFactory in interface Decimal<Scale12f>protected DecimalArithmetic getDefaultArithmetic()
AbstractDecimalHALF_UP.getDefaultArithmetic in class AbstractDecimal<Scale12f,MutableDecimal12f>HALF_UP
rounding and UNCHECKED overflow
modeprotected DecimalArithmetic getDefaultCheckedArithmetic()
AbstractDecimalHALF_UP.getDefaultCheckedArithmetic in class AbstractDecimal<Scale12f,MutableDecimal12f>HALF_UP
rounding and CHECKED overflow modeprotected DecimalArithmetic getRoundingDownArithmetic()
AbstractDecimalDOWN.getRoundingDownArithmetic in class AbstractDecimal<Scale12f,MutableDecimal12f>DOWN rounding and
UNCHECKED overflow modeprotected DecimalArithmetic getRoundingFloorArithmetic()
AbstractDecimalFLOOR.getRoundingFloorArithmetic in class AbstractDecimal<Scale12f,MutableDecimal12f>FLOOR rounding and
UNCHECKED overflow modeprotected DecimalArithmetic getRoundingHalfEvenArithmetic()
AbstractDecimalHALF_EVEN.getRoundingHalfEvenArithmetic in class AbstractDecimal<Scale12f,MutableDecimal12f>HALF_UP rounding and
UNCHECKED overflow modeprotected DecimalArithmetic getRoundingUnnecessaryArithmetic()
AbstractDecimalUNNECESSARY.getRoundingUnnecessaryArithmetic in class AbstractDecimal<Scale12f,MutableDecimal12f>UNNECESSARY
rounding and UNCHECKED overflow
modepublic MutableDecimal12f clone()
MutableDecimalclone in interface MutableDecimal<Scale12f>clone in class AbstractMutableDecimal<Scale12f,MutableDecimal12f>public static MutableDecimal12f unscaled(long unscaledValue)
MutableDecimal12f whose value is equal to
unscaledValue * 10-12.unscaledValue - the unscaled decimal value to convertMutableDecimal12f value initialised with unscaledValue * 10-12AbstractMutableDecimal.setUnscaled(long, int),
AbstractMutableDecimal.setUnscaled(long, int, RoundingMode)public static MutableDecimal12f zero()
MutableDecimal12f whose value is equal to zero.MutableDecimal12f value initialised with 0.public static MutableDecimal12f ulp()
MutableDecimal12f whose value is equal to one ULP.MutableDecimal12f value initialised with 10-12.public static MutableDecimal12f one()
MutableDecimal12f whose value is equal to one.MutableDecimal12f value initialised with 1.public static MutableDecimal12f two()
MutableDecimal12f whose value is equal to two.MutableDecimal12f value initialised with 2.public static MutableDecimal12f three()
MutableDecimal12f whose value is equal to three.MutableDecimal12f value initialised with 3.public static MutableDecimal12f four()
MutableDecimal12f whose value is equal to four.MutableDecimal12f value initialised with 4.public static MutableDecimal12f five()
MutableDecimal12f whose value is equal to five.MutableDecimal12f value initialised with 5.public static MutableDecimal12f six()
MutableDecimal12f whose value is equal to six.MutableDecimal12f value initialised with 6.public static MutableDecimal12f seven()
MutableDecimal12f whose value is equal to seven.MutableDecimal12f value initialised with 7.public static MutableDecimal12f eight()
MutableDecimal12f whose value is equal to eight.MutableDecimal12f value initialised with 8.public static MutableDecimal12f nine()
MutableDecimal12f whose value is equal to nine.MutableDecimal12f value initialised with 9.public static MutableDecimal12f ten()
MutableDecimal12f whose value is equal to ten.MutableDecimal12f value initialised with 10.public static MutableDecimal12f hundred()
MutableDecimal12f whose value is equal to one hundred.MutableDecimal12f value initialised with 100.public static MutableDecimal12f thousand()
MutableDecimal12f whose value is equal to one thousand.MutableDecimal12f value initialised with 1000.public static MutableDecimal12f million()
MutableDecimal12f whose value is equal to one million.MutableDecimal12f value initialised with 106.public static MutableDecimal12f minusOne()
MutableDecimal12f whose value is equal to minus one.MutableDecimal12f value initialised with -1.public static MutableDecimal12f half()
MutableDecimal12f whose value is equal to one half.MutableDecimal12f value initialised with 0.5.public static MutableDecimal12f tenth()
MutableDecimal12f whose value is equal to one tenth.MutableDecimal12f value initialised with 0.1.public static MutableDecimal12f hundredth()
MutableDecimal12f whose value is equal to one hundredth.MutableDecimal12f value initialised with 0.01.public static MutableDecimal12f thousandth()
MutableDecimal12f whose value is equal to one thousandth.MutableDecimal12f value initialised with 0.001.public static MutableDecimal12f millionth()
MutableDecimal12f whose value is equal to one millionth.MutableDecimal12f value initialised with 10-6.public static MutableDecimal12f billionth()
MutableDecimal12f whose value is equal to one billionth.MutableDecimal12f value initialised with 10-9.public static MutableDecimal12f trillionth()
MutableDecimal12f whose value is equal to one trillionth.MutableDecimal12f value initialised with 10-12.public Multipliable12f multiplyExact()
Decimal as a multipliable factor for exact
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:
Decimal14f product = this.multiplyExact().by(Decimal2f.FIVE);
public Decimal12f 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.toImmutableDecimal in interface Decimal<Scale12f>this if immutable and a new ImmutableDecimal with the same scale and value as
this Decimal otherwisepublic MutableDecimal12f 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.toMutableDecimal in interface Decimal<Scale12f>this if mutable and a new MutableDecimal with the same scale and value as this
Decimal otherwise