public final class Multipliable16f extends Object
Multipliable16f
encapsulates a Decimal of scale 16 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 Multipliable16f
object is returned by Decimal16f.multiplyExact()
,
hence an exact typed multiplication can be written as:
Decimal16f value = ... //some value Decimal18f product = value.multiplyExact().by(Decimal2f.FIVE);
Constructor and Description |
---|
Multipliable16f(Decimal<Scale16f> value)
Constructor with Decimal value to be encapsulated.
|
Modifier and Type | Method and Description |
---|---|
Decimal16f |
by(Decimal0f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal17f |
by(Decimal1f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal18f |
by(Decimal2f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal16f |
by(MutableDecimal0f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal17f |
by(MutableDecimal1f factor)
Returns a
Decimal whose value is (this * factor) . |
Decimal18f |
by(MutableDecimal2f factor)
Returns a
Decimal whose value is (this * factor) . |
boolean |
equals(Object obj)
Compares this Multipliable16f to the specified object.
|
Decimal<Scale16f> |
getValue()
Returns the value underlying this Multipliable16f.
|
int |
hashCode()
Returns a hash code for this Multipliable16f which happens to be the
hash code of the underlying
Decimal16f value. |
String |
toString()
Returns a string representation of this
Multipliable16f which is
simply the string representation of the underlying Decimal value . |
public Multipliable16f(Decimal<Scale16f> value)
value
- the decimal value to be wrapped as a multipliable objectpublic Decimal<Scale16f> getValue()
public Decimal16f by(Decimal0f factor)
Decimal
whose value is (this * factor)
. The
result is exact and has scale 16 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 Decimal16f
.
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 Decimal16f
public Decimal16f by(MutableDecimal0f factor)
Decimal
whose value is (this * factor)
. The
result is exact and has scale 16 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 Decimal16f
.
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 Decimal16f
public Decimal17f by(Decimal1f 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(MutableDecimal1f 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(Decimal2f 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(MutableDecimal2f 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()
Decimal16f
value.hashCode
in class Object
Decimal.hashCode()
public boolean equals(Object obj)
true
if and only if the argument is a Multipliable16f
with an equal underlying
value
.equals
in class Object
obj
- the object to compare withtrue
if the argument is a Multipliable16f
and if its value
is equal to this multipliables's value; false
otherwisegetValue()
,
Decimal.equals(Object)
public String toString()
Multipliable16f
which is
simply the string representation of the underlying Decimal value
.toString
in class Object
String
Decimal representation of this Multipliable16f
's
value with all the fraction digits (including trailing zeros)getValue()
,
Decimal.toString()