Class ByteVectorSlice

java.lang.Object
io.deephaven.vector.ByteVector.Indirect
io.deephaven.vector.ByteVectorSlice
All Implemented Interfaces:
LongSizedDataStructure, ByteVector, Vector<ByteVector>, Serializable, Iterable<Byte>

public class ByteVectorSlice extends ByteVector.Indirect
A subset of a ByteVector according to a range of positions.
See Also:
  • Constructor Details

    • ByteVectorSlice

      public ByteVectorSlice(@NotNull @NotNull ByteVector innerVector, long offsetIndex, long length)
  • Method Details

    • get

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

      public ByteVector subVector(long fromIndexInclusive, long toIndexExclusive)
      Description copied from interface: Vector
      Get a Vector that represents a slice of this Vector.
      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 ByteVector subVectorByPositions(long[] positions)
      Description copied from interface: Vector
      Get a Vector that represents a set of offset positions in this Vector.
      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 byte[] 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 ByteVector
      Specified by:
      toArray in interface Vector<ByteVector>
      Overrides:
      toArray in class ByteVector.Indirect
      Returns:
      An array representation of the elements of this Vector that must not be mutated
    • iterator

      public CloseablePrimitiveIteratorOfByte iterator(long fromIndexInclusive, long toIndexExclusive)
      Description copied from interface: ByteVector
      Returns an iterator over a slice of this vector, with equivalent semantics to subVector(fromIndexInclusive, toIndexExclusive).iterator().
      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()
      Description copied from interface: LongSizedDataStructure
      The size of this data structure.
      Returns:
      The size