Package org.codehaus.jackson.node
Class DoubleNode
- java.lang.Object
-
- org.codehaus.jackson.JsonNode
-
- org.codehaus.jackson.node.BaseJsonNode
-
- org.codehaus.jackson.node.ValueNode
-
- org.codehaus.jackson.node.NumericNode
-
- org.codehaus.jackson.node.DoubleNode
-
- All Implemented Interfaces:
Iterable<JsonNode>
,JsonSerializable
,JsonSerializableWithType
public final class DoubleNode extends NumericNode
Numeric node that contains 64-bit ("double precision") floating point values simple 32-bit integer values.
-
-
Field Summary
Fields Modifier and Type Field Description protected double
_value
-
Fields inherited from class org.codehaus.jackson.JsonNode
NO_NODES, NO_STRINGS
-
-
Constructor Summary
Constructors Constructor Description DoubleNode(double v)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description String
asText()
Method that will return valid String representation of the container value, if the node is a value node (methodJsonNode.isValueNode()
returns true), otherwise empty String.JsonToken
asToken()
Method that can be used for efficient type detection when using stream abstraction for traversing nodes.boolean
equals(Object o)
Equality for node objects is defined as full (deep) value equality.BigInteger
getBigIntegerValue()
BigDecimal
getDecimalValue()
double
getDoubleValue()
int
getIntValue()
Returns integer value for this node, if and only if this node is numeric (JsonNode.isNumber()
returns true).long
getLongValue()
JsonParser.NumberType
getNumberType()
If this node is a numeric type (as perJsonNode.isNumber()
), returns native type that node uses to store the numeric value.Number
getNumberValue()
Returns numeric value for this node, if and only if this node is numeric (JsonNode.isNumber()
returns true); otherwise returns nullint
hashCode()
boolean
isDouble()
boolean
isFloatingPointNumber()
void
serialize(JsonGenerator jg, SerializerProvider provider)
Method called to serialize node instances using given generator.static DoubleNode
valueOf(double v)
-
Methods inherited from class org.codehaus.jackson.node.NumericNode
asDouble, asDouble, asInt, asInt, asLong, asLong, isNumber
-
Methods inherited from class org.codehaus.jackson.node.ValueNode
isValueNode, path, path, serializeWithType, toString
-
Methods inherited from class org.codehaus.jackson.node.BaseJsonNode
findParent, findParents, findPath, findValue, findValues, findValuesAsText, traverse
-
Methods inherited from class org.codehaus.jackson.JsonNode
asBoolean, asBoolean, findParents, findValues, findValuesAsText, get, get, getBinaryValue, getBooleanValue, getElements, getFieldNames, getFields, getPath, getPath, getTextValue, getValueAsBoolean, getValueAsBoolean, getValueAsDouble, getValueAsDouble, getValueAsInt, getValueAsInt, getValueAsLong, getValueAsLong, getValueAsText, has, has, isArray, isBigDecimal, isBigInteger, isBinary, isBoolean, isContainerNode, isInt, isIntegralNumber, isLong, isMissingNode, isNull, isObject, isPojo, isTextual, iterator, size, with
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Method Detail
-
valueOf
public static DoubleNode valueOf(double v)
-
asToken
public JsonToken asToken()
Description copied from class:BaseJsonNode
Method that can be used for efficient type detection when using stream abstraction for traversing nodes. Will return the firstJsonToken
that equivalent stream event would produce (for most nodes there is just one token but for structured/container types multiple)
-
getNumberType
public JsonParser.NumberType getNumberType()
Description copied from class:JsonNode
If this node is a numeric type (as perJsonNode.isNumber()
), returns native type that node uses to store the numeric value.- Specified by:
getNumberType
in classNumericNode
-
isFloatingPointNumber
public boolean isFloatingPointNumber()
- Overrides:
isFloatingPointNumber
in classJsonNode
- Returns:
- True if this node represents a non-integral numeric Json value
-
getNumberValue
public Number getNumberValue()
Description copied from class:JsonNode
Returns numeric value for this node, if and only if this node is numeric (JsonNode.isNumber()
returns true); otherwise returns null- Specified by:
getNumberValue
in classNumericNode
- Returns:
- Number value this node contains, if any (null for non-number nodes).
-
getIntValue
public int getIntValue()
Description copied from class:JsonNode
Returns integer value for this node, if and only if this node is numeric (JsonNode.isNumber()
returns true). For other types returns 0. For floating-point numbers, value is truncated using default Java coercion, similar to how cast from double to int operates.- Specified by:
getIntValue
in classNumericNode
- Returns:
- Integer value this node contains, if any; 0 for non-number nodes.
-
getLongValue
public long getLongValue()
- Specified by:
getLongValue
in classNumericNode
-
getDoubleValue
public double getDoubleValue()
- Specified by:
getDoubleValue
in classNumericNode
-
getDecimalValue
public BigDecimal getDecimalValue()
- Specified by:
getDecimalValue
in classNumericNode
-
getBigIntegerValue
public BigInteger getBigIntegerValue()
- Specified by:
getBigIntegerValue
in classNumericNode
-
asText
public String asText()
Description copied from class:JsonNode
Method that will return valid String representation of the container value, if the node is a value node (methodJsonNode.isValueNode()
returns true), otherwise empty String.- Specified by:
asText
in classNumericNode
-
serialize
public final void serialize(JsonGenerator jg, SerializerProvider provider) throws IOException, JsonProcessingException
Description copied from class:BaseJsonNode
Method called to serialize node instances using given generator.- Specified by:
serialize
in interfaceJsonSerializable
- Specified by:
serialize
in classBaseJsonNode
- Throws:
IOException
JsonProcessingException
-
equals
public boolean equals(Object o)
Description copied from class:JsonNode
Equality for node objects is defined as full (deep) value equality. This means that it is possible to compare complete JSON trees for equality by comparing equality of root nodes.Note: marked as abstract to ensure all implementation classes define it properly and not rely on definition from
Object
.
-
-