Package org.glassfish.json
Class JsonNumberImpl.JsonLongNumber
java.lang.Object
org.glassfish.json.JsonNumberImpl
org.glassfish.json.JsonNumberImpl.JsonLongNumber
- All Implemented Interfaces:
JsonNumber
,JsonValue
- Enclosing class:
- JsonNumberImpl
-
Nested Class Summary
Nested classes/interfaces inherited from interface javax.json.JsonValue
JsonValue.ValueType
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns this JSON number as aBigDecimal
object.double
Returns this JSON number as adouble
.boolean
Returns true if this JSON number is a integral number.long
Returns this JSON number as along
.long
Returns this JSON number as along
.toString()
Returns a JSON text representation of the JSON number.Methods inherited from class org.glassfish.json.JsonNumberImpl
bigIntegerValue, bigIntegerValueExact, equals, getJsonNumber, getJsonNumber, getJsonNumber, getJsonNumber, getJsonNumber, getValueType, hashCode, intValue, intValueExact
-
Field Details
-
num
private final long num -
bigDecimal
-
-
Constructor Details
-
JsonLongNumber
JsonLongNumber(long num)
-
-
Method Details
-
isIntegral
public boolean isIntegral()Description copied from interface:JsonNumber
Returns true if this JSON number is a integral number. This method semantics are defined usingbigDecimalValue().scale()
. If the scale is zero, then it is considered integral type. This integral type information can be used to invoke an appropriate accessor method to obtain a numeric value as in the following example:JsonNumber num = ... if (num.isIntegral()) { num.longValue(); // or other methods to get integral value } else { num.doubleValue(); // or other methods to get decimal number value }
- Specified by:
isIntegral
in interfaceJsonNumber
- Overrides:
isIntegral
in classJsonNumberImpl
- Returns:
- true if this number is a integral number, otherwise false
-
longValue
public long longValue()Description copied from interface:JsonNumber
Returns this JSON number as along
. Note that this conversion can lose information about the overall magnitude and precision of the number value as well as return a result with the opposite sign.- Specified by:
longValue
in interfaceJsonNumber
- Overrides:
longValue
in classJsonNumberImpl
- Returns:
- a
long
representation of the JSON number. - See Also:
-
longValueExact
public long longValueExact()Description copied from interface:JsonNumber
Returns this JSON number as along
.- Specified by:
longValueExact
in interfaceJsonNumber
- Overrides:
longValueExact
in classJsonNumberImpl
- Returns:
- a
long
representation of the JSON number - See Also:
-
doubleValue
public double doubleValue()Description copied from interface:JsonNumber
Returns this JSON number as adouble
. This is a a convenience method forbigDecimalValue().doubleValue()
. Note that this conversion can lose information about the overall magnitude and precision of the number value as well as return a result with the opposite sign.- Specified by:
doubleValue
in interfaceJsonNumber
- Overrides:
doubleValue
in classJsonNumberImpl
- Returns:
- a
double
representation of the JSON number - See Also:
-
bigDecimalValue
Description copied from interface:JsonNumber
Returns this JSON number as aBigDecimal
object.- Returns:
- a
BigDecimal
representation of the JSON number
-
toString
Description copied from interface:JsonNumber
Returns a JSON text representation of the JSON number. The representation is equivalent toBigDecimal.toString()
.- Specified by:
toString
in interfaceJsonNumber
- Specified by:
toString
in interfaceJsonValue
- Overrides:
toString
in classJsonNumberImpl
- Returns:
- JSON text representation of the number
-