Class IntVectorDirect

java.lang.Object
io.deephaven.vector.IntVectorDirect
All Implemented Interfaces:
io.deephaven.util.datastructures.LongSizedDataStructure, IntVector, Vector<IntVector>, Serializable, Iterable<Integer>

public final class IntVectorDirect extends Object implements IntVector
A IntVector backed by an array.
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from interface io.deephaven.vector.IntVector

    IntVector.Indirect
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final IntVector
     

    Fields inherited from interface io.deephaven.vector.Vector

    NULL_ELEMENT_STRING
  • Constructor Summary

    Constructors
    Constructor
    Description
    IntVectorDirect(@org.jetbrains.annotations.NotNull int... data)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int[]
    Get an array representation of the elements of this Vector.
    boolean
     
    int
    get(long index)
    Get the element of this IntVector at offset index.
     
    int
     
    io.deephaven.engine.primitive.iterator.CloseablePrimitiveIteratorOfInt
    iterator(long fromIndexInclusive, long toIndexExclusive)
    Returns an iterator over a slice of this vector, with equivalent semantics to subVector(fromIndexInclusive, toIndexExclusive).iterator().
    long
     
    subVector(long fromIndexInclusive, long toIndexExclusive)
    Get a Vector that represents a slice of this Vector.
    subVectorByPositions(long[] positions)
    Get a Vector that represents a set of offset positions in this Vector.
    int[]
    Get an array representation of the elements of this Vector.
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface io.deephaven.vector.IntVector

    getComponentType, iterator, toString

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator

    Methods inherited from interface io.deephaven.util.datastructures.LongSizedDataStructure

    intSize, intSize

    Methods inherited from interface io.deephaven.vector.Vector

    isEmpty
  • Field Details

    • ZERO_LENGTH_VECTOR

      public static final IntVector ZERO_LENGTH_VECTOR
  • Constructor Details

    • IntVectorDirect

      public IntVectorDirect(@NotNull @org.jetbrains.annotations.NotNull int... data)
  • Method Details

    • get

      public int get(long index)
      Description copied from interface: IntVector
      Get the element of this IntVector at offset index. If index is not within range [0, size()), will return the null int.
      Specified by:
      get in interface IntVector
      Parameters:
      index - An offset into this IntVector
      Returns:
      The element at the specified offset, or the null int
    • subVector

      public IntVector subVector(long fromIndexInclusive, long toIndexExclusive)
      Description copied from interface: Vector
      Get a Vector that represents a slice of this Vector.
      Specified by:
      subVector in interface IntVector
      Specified by:
      subVector in interface Vector<IntVector>
      Parameters:
      fromIndexInclusive - The first offset into this Vector to include in the result; if negative, the result will have a range of null values at offsets in [0, -fromIndexInclusive)
      toIndexExclusive - The first offset into this Vector to not include in the result; if larger than size(), the result will have a range of null values at the corresponding offsets
      Returns:
      The sub-Vector specified by [fromIndexInclusive, toIndexExclusive)
    • subVectorByPositions

      public IntVector subVectorByPositions(long[] positions)
      Description copied from interface: Vector
      Get a Vector that represents a set of offset positions in this Vector.
      Specified by:
      subVectorByPositions in interface IntVector
      Specified by:
      subVectorByPositions in interface Vector<IntVector>
      Parameters:
      positions - The offsets to include; if not within [0, size()), the corresponding offset in the result will contain the appropriate null value
      Returns:
      The sub-Vector specified by positions
    • toArray

      public int[] toArray()
      Description copied from interface: Vector
      Get an array representation of the elements of this Vector. Callers must not mutate the result, as implementations may choose to return their backing array in some cases.
      Specified by:
      toArray in interface IntVector
      Specified by:
      toArray in interface Vector<IntVector>
      Returns:
      An array representation of the elements of this Vector that must not be mutated
    • copyToArray

      public int[] copyToArray()
      Description copied from interface: Vector
      Get an array representation of the elements of this Vector. Callers may freely mutate the result, as it is guaranteed to be freshly-allocated and belongs to the caller upon return.
      Specified by:
      copyToArray in interface IntVector
      Specified by:
      copyToArray in interface Vector<IntVector>
      Returns:
      An array representation of the elements of this Vector that may be freely mutated
    • iterator

      public io.deephaven.engine.primitive.iterator.CloseablePrimitiveIteratorOfInt iterator(long fromIndexInclusive, long toIndexExclusive)
      Description copied from interface: IntVector
      Returns an iterator over a slice of this vector, with equivalent semantics to subVector(fromIndexInclusive, toIndexExclusive).iterator().
      Specified by:
      iterator in interface IntVector
      Parameters:
      fromIndexInclusive - The first position to include
      toIndexExclusive - The first position after fromIndexInclusive to not include
      Returns:
      An iterator over the requested slice
    • size

      public long size()
      Specified by:
      size in interface io.deephaven.util.datastructures.LongSizedDataStructure
    • getDirect

      public IntVectorDirect getDirect()
      Specified by:
      getDirect in interface IntVector
      Specified by:
      getDirect in interface Vector<IntVector>
      Returns:
      A version of this Vector that is flattened out to only reference memory
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object