## com.fasterxml.jackson.databind.node
Class DecimalNode

    java.lang.Object
      com.fasterxml.jackson.databind.JsonNode
          com.fasterxml.jackson.databind.node.BaseJsonNode
              com.fasterxml.jackson.databind.node.ValueNode
                  com.fasterxml.jackson.databind.node.NumericNode
                      com.fasterxml.jackson.databind.node.DecimalNode

All Implemented Interfaces:
  com.fasterxml.jackson.core.TreeNode, JsonSerializable, Iterable<JsonNode>

    public final class DecimalNode

extends NumericNode

Numeric node that contains values that do not fit in simple integer (int, long) or floating point (double) values.

Field Summary
`protected BigDecimal` `_value`

Fields inherited from class com.fasterxml.jackson.databind.JsonNode
`NO_NODES, NO_STRINGS`

Constructor Summary
`DecimalNode(BigDecimal v)`

Method Summary
`String` `asText()` Method that will return a valid String representation of the container value, if the node is a value node (method `JsonNode.isValueNode()` returns true), otherwise empty String.
`com.fasterxml.jackson.core.JsonToken` `asToken()` Method that can be used for efficient type detection when using stream abstraction for traversing nodes.
`BigInteger` `bigIntegerValue()`
`boolean` `canConvertToInt()` Method that can be used to check whether this node is a numeric node (`JsonNode.isNumber()` would return true) AND its value fits within Java's 32-bit signed integer type, `int`.
`boolean` `canConvertToLong()` Method that can be used to check whether this node is a numeric node (`JsonNode.isNumber()` would return true) AND its value fits within Java's 64-bit signed integer type, `long`.
`BigDecimal` `decimalValue()`
`double` `doubleValue()`
`boolean` `equals(Object o)` Equality for node objects is defined as full (deep) value equality.
`int` `hashCode()`
`int` `intValue()` Returns integer value for this node, if and only if this node is numeric (`JsonNode.isNumber()` returns true).
`boolean` `isBigDecimal()`
`boolean` `isFloatingPointNumber()`
`long` `longValue()`
`com.fasterxml.jackson.core.JsonParser.NumberType` `numberType()` Returns code that identifies type of underlying numeric value, if (and only if) node is a number node.
`Number` `numberValue()` Returns numeric value for this node, if and only if this node is numeric (`JsonNode.isNumber()` returns true); otherwise returns null
`void` `serialize(com.fasterxml.jackson.core.JsonGenerator jg, SerializerProvider provider)` Method called to serialize node instances using given generator.
`static DecimalNode` `valueOf(BigDecimal d)`

Methods inherited from class com.fasterxml.jackson.databind.node.NumericNode
`asDouble, asDouble, asInt, asInt, asLong, asLong, isNumber`

Methods inherited from class com.fasterxml.jackson.databind.node.ValueNode
`deepCopy, isValueNode, path, path, serializeWithType, toString`

Methods inherited from class com.fasterxml.jackson.databind.node.BaseJsonNode
`findParent, findParents, findPath, findValue, findValues, findValuesAsText, traverse`

Methods inherited from class com.fasterxml.jackson.databind.JsonNode
`asBoolean, asBoolean, binaryValue, booleanValue, elements, fieldNames, fields, findParents, findValues, findValuesAsText, get, get, has, has, isArray, isBigInteger, isBinary, isBoolean, isContainerNode, isDouble, isInt, isIntegralNumber, isLong, isMissingNode, isNull, isObject, isPojo, isTextual, iterator, size, textValue, with, withArray`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### _value

    protected final BigDecimal _value

Constructor Detail

### DecimalNode

    public DecimalNode(BigDecimal v)

Method Detail

### valueOf

    public static DecimalNode valueOf(BigDecimal d)

### asToken

    public com.fasterxml.jackson.core.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 first `JsonToken` that equivalent stream event would produce (for most nodes there is just one token but for structured/container types multiple)

  Specified by:
    `asToken` in interface `com.fasterxml.jackson.core.TreeNode`
  Specified by:
    `asToken` in class `ValueNode`

### numberType

    public com.fasterxml.jackson.core.JsonParser.NumberType numberType()

  Description copied from class: `BaseJsonNode`
  Returns code that identifies type of underlying numeric value, if (and only if) node is a number node.

  Specified by:
    `numberType` in interface `com.fasterxml.jackson.core.TreeNode`
  Specified by:
    `numberType` in class `NumericNode`
  Returns:
    Type of number contained, if any; or null if node does not contain numeric value.

### isFloatingPointNumber

    public boolean isFloatingPointNumber()

  Overrides:
    `isFloatingPointNumber` in class `JsonNode`
  Returns:
    True if this node represents a non-integral numeric JSON value

### isBigDecimal

    public boolean isBigDecimal()

  Overrides:
    `isBigDecimal` in class `JsonNode`

### canConvertToInt

    public boolean canConvertToInt()

  Description copied from class: `JsonNode`
  Method that can be used to check whether this node is a numeric node (`JsonNode.isNumber()` would return true) AND its value fits within Java's 32-bit signed integer type, `int`. Note that floating-point numbers are convertible if the integral part fits without overflow (as per standard Java coercion rules)

  Specified by:
    `canConvertToInt` in class `NumericNode`

### canConvertToLong

    public boolean canConvertToLong()

  Description copied from class: `JsonNode`
  Method that can be used to check whether this node is a numeric node (`JsonNode.isNumber()` would return true) AND its value fits within Java's 64-bit signed integer type, `long`. Note that floating-point numbers are convertible if the integral part fits without overflow (as per standard Java coercion rules)

  Specified by:
    `canConvertToLong` in class `NumericNode`

### numberValue

    public Number numberValue()

  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:
    `numberValue` in class `NumericNode`
  Returns:
    Number value this node contains, if any (null for non-number nodes).

### intValue

    public int intValue()

  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:
    `intValue` in class `NumericNode`
  Returns:
    Integer value this node contains, if any; 0 for non-number nodes.

### longValue

    public long longValue()

  Specified by:
    `longValue` in class `NumericNode`

### bigIntegerValue

    public BigInteger bigIntegerValue()

  Specified by:
    `bigIntegerValue` in class `NumericNode`

### doubleValue

    public double doubleValue()

  Specified by:
    `doubleValue` in class `NumericNode`

### decimalValue

    public BigDecimal decimalValue()

  Specified by:
    `decimalValue` in class `NumericNode`

### asText

    public String asText()

  Description copied from class: `JsonNode`
  Method that will return a valid String representation of the container value, if the node is a value node (method `JsonNode.isValueNode()` returns true), otherwise empty String.

  Specified by:
    `asText` in class `NumericNode`

### serialize

    public final void serialize(com.fasterxml.jackson.core.JsonGenerator jg,
                                SerializerProvider provider)
                         throws IOException,
                                com.fasterxml.jackson.core.JsonProcessingException

  Description copied from class: `BaseJsonNode`
  Method called to serialize node instances using given generator.

  Specified by:
    `serialize` in interface `JsonSerializable`
  Specified by:
    `serialize` in class `BaseJsonNode`
  Throws:
    `IOException`
    `com.fasterxml.jackson.core.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`.

  Specified by:
    `equals` in class `JsonNode`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

Copyright © 2012 fasterxml.com. All Rights Reserved.