public class Decimal extends Number implements Comparable
Decimal encodes a number as
an array of bytes in base-100 and a signed exponent (-64 to +63).
The byte array is of fixed size with the implied decimal point to the
left of the first byte. The exponent represents powers of 100. A special
exponent value DECPOSNULL indicates a Decimal
with null (undefined) value.| Modifier and Type | Field and Description |
|---|---|
static int |
DECPOSNULL
Exponent value indicating a null
Decimal, i.e., a Decimal
with undefined value. |
static int |
DECSIZE
Size of the array of bytes representing the digits of the
Decimal. |
| Modifier and Type | Method and Description |
|---|---|
BigDecimal |
bigDecimalValue()
Converts the
Decimal to a BigDecimal value. |
byte |
byteValue()
Converts the
Decimal to a byte value. |
int |
compareTo(Decimal other)
Compares two
Decimal objects numerically. |
int |
compareTo(Object other)
Compares this
Decimal object to another object. |
byte[] |
digits()
Returns the actual decimal digits.
|
double |
doubleValue()
Converts the
Decimal to a double value. |
boolean |
equals(Object obj)
Compares this object to another object.
|
int |
exponent()
Returns the exponent of the
Decimal value. |
float |
floatValue()
Converts the
Decimal to a float value. |
int |
intValue()
Converts the
Decimal to an int value. |
long |
longValue()
Converts the
Decimal to a long value. |
Decimal |
negate()
Creates a newly allocated
Decimal whose value is (-this). |
int |
numDigits()
Returns the number of significant digits in the
Decimal value. |
short |
shortValue()
Converts the
Decimal to a short value. |
int |
sign()
Returns the sign of the
Decimal value. |
String |
toString()
Converts the
Decimal to a String. |
static String |
toString(Decimal dec)
Converts the input
Decimal to a String. |
static Decimal |
valueOf(String s)
Constructs a newly allocated
Decimal object from a String value. |
public static final int DECSIZE
Decimal.public static final int DECPOSNULL
Decimal, i.e., a Decimal
with undefined value. Null Decimals cannot be compared numerically
with other Decimals.public int exponent()
Decimal value. The exponent
represents powers of 100.public int sign()
Decimal value.DECPOSNULL a null value.Decimal.DECPOSNULLpublic int numDigits()
Decimal value.Decimal value.public byte[] digits()
public Decimal negate()
Decimal whose value is (-this).Decimal whose value is (-this). If the original Decimal
has a null value, that is, its sign is DECPOSNULL, a new null Decimal is returned.Decimal.DECPOSNULLpublic BigDecimal bigDecimalValue()
Decimal to a BigDecimal value.BigDecimal value representing the Decimal. If
the Decimal has a null value, a new BigDecimal(Double.MIN_VALUE)
is returned.public double doubleValue()
Decimal to a double value.doubleValue in class Numberdouble value representing the Decimal. If
the Decimal has a null value, Double.MIN_VALUE
is returned.public float floatValue()
throws NumberFormatException
Decimal to a float value.floatValue in class Numberfloat value representing the Decimal. If
the Decimal has a null value, Float.MIN_VALUE
is returned.NumberFormatException - if the Decimal value would cause overflow
when converted to a float.public long longValue()
throws NumberFormatException
Decimal to a long value.longValue in class Numberlong value representing the Decimal. If
the Decimal has a null value, Long.MIN_VALUE
is returned.NumberFormatException - if the Decimal value cannot be
represented as a long.public int intValue()
throws NumberFormatException
Decimal to an int value.intValue in class Numberint value representing the Decimal. If
the Decimal has a null value, Integer.MIN_VALUE
is returned.NumberFormatException - if the Decimal value cannot be
represented as an int.public short shortValue()
throws NumberFormatException
Decimal to a short value.shortValue in class Numbershort value representing the Decimal. If
the Decimal has a null value, Short.MIN_VALUE
is returned.NumberFormatException - if the Decimal value cannot be
represented as a short.public byte byteValue()
throws NumberFormatException
Decimal to a byte value.byteValue in class Numberbyte value representing the Decimal. If
the Decimal has a null value, Byte.MIN_VALUE
is returned.NumberFormatException - if the Decimal value cannot be
represented as a byte.public String toString() throws NumberFormatException
Decimal to a String. The String is
in the format that the Java Double.toString method would
generate for an equivalent double value.toString in class ObjectString value representing the Decimal.NumberFormatException - if the Decimal value cannot be
represented as a double.public static String toString(Decimal dec) throws NumberFormatException
Decimal to a String. The String is
in the format that the Java Double.toString method would
generate for an equivalent double value.dec - the Decimal object to convert.String value representing the Decimal.NumberFormatException - if the Decimal value cannot be
represented as a double.public static Decimal valueOf(String s) throws NumberFormatException
Decimal object from a String value. The String
is converted to a Decimal value. The String must be in the format accepted
by the Java Double.parseDouble method.s - the String value to convert.NumberFormatException - if the value is in the wrong format or
would overflow or underflow when converted to Decimal.public int compareTo(Object other) throws NumberFormatException
Decimal object to another object. If the
other object is a Decimal, this function behaves like
compareTo(Decimal). Otherwise, it throws a ClassCastException.compareTo in interface Comparableother - the other object to compareClassCastException - if obj is not a DecimalNumberFormatException - if either of the objects has a null value,
that is, if their exponent is equal to DECPOSNULL.Decimal.DECPOSNULLpublic int compareTo(Decimal other) throws NumberFormatException
Decimal objects numerically. Neither
object can have a null value.other - a Decimal that is compared against this
object.NumberFormatException - if either of the objects has a null value,
that is, if their exponent is equal to DECPOSNULL.Decimal.DECPOSNULLpublic boolean equals(Object obj)
Decimal
object with the same value as the current object. The values are
equal if the objects have identical bit patterns. Note that null
valued Decimals may be compared in this operation
(unlike compareTo(Decimal)).