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 represents(this * factor)ArithmeticException - if an overflow occurs and product is out of the possible
range for a Decimal17fpublic 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 represents(this * factor)ArithmeticException - if an overflow occurs and product is out of the possible
range for a Decimal17fpublic 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 represents(this * factor)ArithmeticException - if an overflow occurs and product is out of the possible
range for a Decimal18fpublic 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 represents(this * factor)ArithmeticException - if an overflow occurs and product is out of the possible
range for a Decimal18fpublic int hashCode()
Multipliable17f which happens to be the
hash code of the underlying Decimal17f value.hashCode in class ObjectDecimal.hashCode()public boolean equals(Object obj)
true
if and only if the argument is a Multipliable17f with an equal underlying
value.equals in class Objectobj - 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 ObjectString Decimal representation of this Multipliable17f's
value with all the fraction digits (including trailing zeros)getValue(),
Decimal.toString()