Package org.h2.value

Class ValueArray

All Implemented Interfaces:
HasSQL, Typed

public final class ValueArray extends ValueCollectionBase
Implementation of the ARRAY data type.
  • Field Details

    • EMPTY

      public static final ValueArray EMPTY
      Empty array.
    • type

      private TypeInfo type
    • componentType

      private TypeInfo componentType
  • Constructor Details

  • Method Details

    • get

      public static ValueArray get(Value[] list, CastDataProvider provider)
      Get or create a array value for the given value array. Do not clone the data.
      Parameters:
      list - the value array
      provider - the cast information provider
      Returns:
      the value
    • get

      public static ValueArray get(TypeInfo componentType, Value[] list, CastDataProvider provider)
      Get or create a array value for the given value array. Do not clone the data.
      Parameters:
      componentType - the type of elements, or null
      list - the value array
      provider - the cast information provider
      Returns:
      the value
    • getType

      public TypeInfo getType()
      Description copied from interface: Typed
      Returns the data type.
      Specified by:
      getType in interface Typed
      Specified by:
      getType in class Value
      Returns:
      the data type
    • getValueType

      public int getValueType()
      Description copied from class: Value
      Get the value type.
      Specified by:
      getValueType in class Value
      Returns:
      the value type
    • getComponentType

      public TypeInfo getComponentType()
    • getString

      public String getString()
      Description copied from class: Value
      Get the value as a string.
      Specified by:
      getString in class Value
      Returns:
      the string
    • compareTypeSafe

      public int compareTypeSafe(Value o, CompareMode mode, CastDataProvider provider)
      Description copied from class: Value
      Compare this value against another value given that the values are of the same data type.
      Specified by:
      compareTypeSafe in class Value
      Parameters:
      o - the other value
      mode - the compare mode
      provider - the cast information provider
      Returns:
      0 if both values are equal, -1 if the other value is smaller, and 1 otherwise
    • getSQL

      public StringBuilder getSQL(StringBuilder builder, int sqlFlags)
      Description copied from interface: HasSQL
      Appends the SQL statement of this object to the specified builder.
      Parameters:
      builder - string builder
      sqlFlags - formatting flags
      Returns:
      the specified string builder
    • equals

      public boolean equals(Object other)
      Description copied from class: Value
      Check if the two values have the same hash code. No data conversion is made; this method returns false if the other object is not of the same class. For some values, compareTo may return 0 even if equals return false. Example: ValueDecimal 0.0 and 0.00.
      Specified by:
      equals in class Value
      Parameters:
      other - the other value
      Returns:
      true if they are equal