public final class Multipliable17f extends Object
Multipliable17f
encapsulates a Decimal of scale 17 and facilitates
exact typed multiplication. The multipliable object acts as first factor in the multiplication
and provides a set of overloaded methods for different scales. Each one of those methods
delivers a different result scale which represents the appropriate scale for the product of
an exact multiplication.
A Multipliable17f
object is returned by Decimal17f.multiplyExact()
,
hence an exact typed multiplication can be written as:
Decimal17f value = ... //some value Decimal17f product = value.multiplyExact().by(Decimal0f.FIVE);
Constructor and Description |
---|
Multipliable17f(Decimal<Scale17f> value)
Constructor with Decimal value to be encapsulated.
|
Modifier and Type | Method and Description |
---|---|
Decimal17f |
by(Decimal0f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal18f |
by(Decimal1f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal17f |
by(MutableDecimal0f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal18f |
by(MutableDecimal1f factor)
Returns a
Decimal whose value is (this * factor) . |
boolean |
equals(Object obj)
Compares this Multipliable17f to the specified object.
|
Decimal<Scale17f> |
getValue()
Returns the value underlying this Multipliable17f.
|
int |
hashCode()
Returns a hash code for this Multipliable17f which happens to be the
hash code of the underlying
Decimal17f value. |
String |
toString()
Returns a string representation of this
Multipliable17f which is
simply the string representation of the underlying Decimal value . |
public Multipliable17f(Decimal<Scale17f> value)
value
- the decimal value to be wrapped as a multipliable objectpublic Decimal<Scale17f> getValue()
public Decimal17f by(Decimal0f factor)
Decimal
whose value is (this * factor)
. The
result is exact and has scale 17 which is the sum of the scales
of the Decimal that this multipliable object represents and the scale of
the factor
argument. An ArithmeticException
is thrown if the
product is out of the possible range for a Decimal17f
.
Note that the result is always a new instance.
factor
- the factor to multiply with the Decimal that this multipliable representsArithmeticException
- if an overflow occurs and product is out of the possible
range for a Decimal17f
public Decimal17f by(MutableDecimal0f factor)
Decimal
whose value is (this * factor)
. The
result is exact and has scale 17 which is the sum of the scales
of the Decimal that this multipliable object represents and the scale of
the factor
argument. An ArithmeticException
is thrown if the
product is out of the possible range for a Decimal17f
.
Note that the result is always a new instance.
factor
- the factor to multiply with the Decimal that this multipliable representsArithmeticException
- if an overflow occurs and product is out of the possible
range for a Decimal17f
public Decimal18f by(Decimal1f factor)
Decimal
whose value is (this * factor)
. The
result is exact and has scale 18 which is the sum of the scales
of the Decimal that this multipliable object represents and the scale of
the factor
argument. An ArithmeticException
is thrown if the
product is out of the possible range for a Decimal18f
.
Note that the result is always a new instance.
factor
- the factor to multiply with the Decimal that this multipliable representsArithmeticException
- if an overflow occurs and product is out of the possible
range for a Decimal18f
public Decimal18f by(MutableDecimal1f factor)
Decimal
whose value is (this * factor)
. The
result is exact and has scale 18 which is the sum of the scales
of the Decimal that this multipliable object represents and the scale of
the factor
argument. An ArithmeticException
is thrown if the
product is out of the possible range for a Decimal18f
.
Note that the result is always a new instance.
factor
- the factor to multiply with the Decimal that this multipliable representsArithmeticException
- if an overflow occurs and product is out of the possible
range for a Decimal18f
public int hashCode()
Decimal17f
value.hashCode
in class Object
Decimal.hashCode()
public boolean equals(Object obj)
true
if and only if the argument is a Multipliable17f
with an equal underlying
value
.equals
in class Object
obj
- the object to compare withtrue
if the argument is a Multipliable17f
and if its value
is equal to this multipliables's value; false
otherwisegetValue()
,
Decimal.equals(Object)
public String toString()
Multipliable17f
which is
simply the string representation of the underlying Decimal value
.toString
in class Object
String
Decimal representation of this Multipliable17f
's
value with all the fraction digits (including trailing zeros)getValue()
,
Decimal.toString()