-
- All Superinterfaces:
- JsonValue
public interface JsonNumber extends JsonValue
An immutable JSON number value.Implementations may use a
BigDecimal
object to store the numeric value internally. TheBigDecimal
object can be constructed from the following types:
,int
,long
,BigInteger
, anddouble
. Some of the method semantics in this class are defined using theString
BigDecimal
semantics.- Author:
- Jitendra Kotamraju
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface javax.json.JsonValue
JsonValue.ValueType
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description BigDecimal
bigDecimalValue()
Returns this JSON number as aBigDecimal
object.BigInteger
bigIntegerValue()
Returns this JSON number as aBigInteger
object.BigInteger
bigIntegerValueExact()
Returns this JSON number as aBigDecimal
object.double
doubleValue()
Returns this JSON number as adouble
.boolean
equals(Object obj)
Compares the specified object with thisJsonNumber
object for equality.int
hashCode()
Returns the hash code value for thisJsonNumber
object.int
intValue()
Returns this JSON number as anint
.int
intValueExact()
Returns this JSON number as anint
.boolean
isIntegral()
Returns true if this JSON number is a integral number.long
longValue()
Returns this JSON number as along
.long
longValueExact()
Returns this JSON number as along
.String
toString()
Returns a JSON text representation of the JSON number.-
Methods inherited from interface javax.json.JsonValue
getValueType
-
-
-
-
Method Detail
-
isIntegral
boolean isIntegral()
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 }
- Returns:
- true if this number is a integral number, otherwise false
-
intValue
int intValue()
Returns this JSON number as anint
. 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.- Returns:
- an
int
representation of the JSON number - See Also:
BigDecimal.intValue()
-
intValueExact
int intValueExact()
Returns this JSON number as anint
.- Returns:
- an
int
representation of the JSON number - Throws:
ArithmeticException
- if the number has a nonzero fractional part or if it does not fit in anint
- See Also:
BigDecimal.intValueExact()
-
longValue
long longValue()
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.- Returns:
- a
long
representation of the JSON number. - See Also:
BigDecimal.longValue()
-
longValueExact
long longValueExact()
Returns this JSON number as along
.- Returns:
- a
long
representation of the JSON number - Throws:
ArithmeticException
- if the number has a non-zero fractional part or if it does not fit in along
- See Also:
BigDecimal.longValueExact()
-
bigIntegerValue
BigInteger bigIntegerValue()
Returns this JSON number as aBigInteger
object. This is a a convenience method forbigDecimalValue().toBigInteger()
. 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.- Returns:
- a
BigInteger
representation of the JSON number. - See Also:
BigDecimal.toBigInteger()
-
bigIntegerValueExact
BigInteger bigIntegerValueExact()
Returns this JSON number as aBigDecimal
object. This is a convenience method forbigDecimalValue().toBigIntegerExact()
.- Returns:
- a
BigInteger
representation of the JSON number - Throws:
ArithmeticException
- if the number has a nonzero fractional part- See Also:
BigDecimal.toBigIntegerExact()
-
doubleValue
double doubleValue()
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.- Returns:
- a
double
representation of the JSON number - See Also:
BigDecimal.doubleValue()
-
bigDecimalValue
BigDecimal bigDecimalValue()
Returns this JSON number as aBigDecimal
object.- Returns:
- a
BigDecimal
representation of the JSON number
-
toString
String toString()
Returns a JSON text representation of the JSON number. The representation is equivalent toBigDecimal.toString()
.
-
equals
boolean equals(Object obj)
Compares the specified object with thisJsonNumber
object for equality. Returnstrue
if and only if the type of the specified object is alsoJsonNumber
and theirbigDecimalValue()
objects are equal
-
hashCode
int hashCode()
Returns the hash code value for thisJsonNumber
object. The hash code of aJsonNumber
object is defined as the hash code of itsbigDecimalValue()
object.
-
-
Traduction non disponible
Les API Java ne sont pas encore traduites en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.
Version en cache
21/08/2025 15:05:09 Cette version de la page est en cache (à la date du 21/08/2025 15:05:09) afin d'accélérer le traitement.Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la version plus récente de la page.
Document créé le 11/06/2005, dernière modification le 18/08/2025
Source du document imprimé : https://www.gaudry.be/java-api-javaee-rf-javax/json/JsonNumber.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.