Package io.deephaven.vector
Class ObjectVectorDirect<COMPONENT_TYPE>
java.lang.Object
io.deephaven.vector.ObjectVectorDirect<COMPONENT_TYPE>
- All Implemented Interfaces:
LongSizedDataStructure
,ObjectVector<COMPONENT_TYPE>
,Vector<ObjectVector<COMPONENT_TYPE>>
,Serializable
,Iterable<COMPONENT_TYPE>
public final class ObjectVectorDirect<COMPONENT_TYPE>
extends Object
implements ObjectVector<COMPONENT_TYPE>
An
ObjectVector
backed by an array.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.vector.ObjectVector
ObjectVector.Indirect<COMPONENT_TYPE>
-
Field Summary
Fields inherited from interface io.deephaven.vector.Vector
NULL_ELEMENT_STRING
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionGet an array representation of the elements of this Vector.static <COMPONENT_TYPE>
ObjectVector<COMPONENT_TYPE>empty()
boolean
get
(long index) Get the element of this ObjectVector at offsetindex
.int
hashCode()
iterator
(long fromIndexInclusive, long toIndexExclusive) Returns an iterator over a slice of this ObjectVector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator()
.long
size()
The size of this data structure.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.toArray()
Get an array representation of the elements of this Vector.toString()
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
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.ObjectVector
iterator, toString
-
Field Details
-
ZERO_LENGTH_VECTOR
-
-
Constructor Details
-
ObjectVectorDirect
-
-
Method Details
-
empty
-
get
Description copied from interface:ObjectVector
Get the element of this ObjectVector at offsetindex
. Ifindex
is not within range[0, size())
, will returnnull
.- Specified by:
get
in interfaceObjectVector<COMPONENT_TYPE>
- Parameters:
index
- An offset into this ObjectVector- Returns:
- The element at the specified offset, or
null
-
subVector
Description copied from interface:Vector
Get a Vector that represents a slice of this Vector.- Specified by:
subVector
in interfaceObjectVector<COMPONENT_TYPE>
- Specified by:
subVector
in interfaceVector<COMPONENT_TYPE>
- 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 thansize()
, the result will have a range of null values at the corresponding offsets- Returns:
- The sub-Vector specified by
[fromIndexInclusive, toIndexExclusive)
-
subVectorByPositions
Description copied from interface:Vector
Get a Vector that represents a set of offset positions in this Vector.- Specified by:
subVectorByPositions
in interfaceObjectVector<COMPONENT_TYPE>
- Specified by:
subVectorByPositions
in interfaceVector<COMPONENT_TYPE>
- 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
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 interfaceObjectVector<COMPONENT_TYPE>
- Specified by:
toArray
in interfaceVector<COMPONENT_TYPE>
- Returns:
- An array representation of the elements of this Vector that must not be mutated
-
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 interfaceObjectVector<COMPONENT_TYPE>
- Specified by:
copyToArray
in interfaceVector<COMPONENT_TYPE>
- Returns:
- An array representation of the elements of this Vector that may be freely mutated
-
iterator
Description copied from interface:ObjectVector
Returns an iterator over a slice of this ObjectVector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator()
.- Specified by:
iterator
in interfaceObjectVector<COMPONENT_TYPE>
- Parameters:
fromIndexInclusive
- The first position to includetoIndexExclusive
- The first position afterfromIndexInclusive
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.- Specified by:
size
in interfaceLongSizedDataStructure
- Returns:
- The size
-
getComponentType
- Specified by:
getComponentType
in interfaceObjectVector<COMPONENT_TYPE>
- Specified by:
getComponentType
in interfaceVector<COMPONENT_TYPE>
- Returns:
- The type of elements contained by this Vector
-
getDirect
- Specified by:
getDirect
in interfaceObjectVector<COMPONENT_TYPE>
- Specified by:
getDirect
in interfaceVector<COMPONENT_TYPE>
- Returns:
- A version of this Vector that is flattened out to only reference memory
-
toString
-
equals
-
hashCode
public int hashCode()
-