Enum ToNumberPolicy

java.lang.Object
java.lang.Enum<ToNumberPolicy>
com.google.gson.ToNumberPolicy
All Implemented Interfaces:
ToNumberStrategy, Serializable, Comparable<ToNumberPolicy>

public enum ToNumberPolicy extends Enum<ToNumberPolicy> implements ToNumberStrategy
An enumeration that defines two standard number reading strategies and a couple of strategies to overcome some historical Gson limitations while deserializing numbers as Object and Number.
Since:
2.8.9
See Also:
  • Enum Constant Details

    • DOUBLE

      public static final ToNumberPolicy DOUBLE
      Using this policy will ensure that numbers will be read as Double values. This is the default strategy used during deserialization of numbers as Object.
    • LAZILY_PARSED_NUMBER

      public static final ToNumberPolicy LAZILY_PARSED_NUMBER
      Using this policy will ensure that numbers will be read as a lazily parsed number backed by a string. This is the default strategy used during deserialization of numbers as Number.
    • LONG_OR_DOUBLE

      public static final ToNumberPolicy LONG_OR_DOUBLE
      Using this policy will ensure that numbers will be read as Long or Double values depending on how JSON numbers are represented: Long if the JSON number can be parsed as a Long value, or otherwise Double if it can be parsed as a Double value. If the parsed double-precision number results in a positive or negative infinity (Double.isInfinite()) or a NaN (Double.isNaN()) value and the JsonReader is not lenient, a MalformedJsonException is thrown.
    • BIG_DECIMAL

      public static final ToNumberPolicy BIG_DECIMAL
      Using this policy will ensure that numbers will be read as numbers of arbitrary length using BigDecimal.
  • Method Details

    • values

      public static ToNumberPolicy[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static ToNumberPolicy valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null