Package io.deephaven.vector
Class DoubleVectorDirect
java.lang.Object
io.deephaven.vector.DoubleVectorDirect
- All Implemented Interfaces:
LongSizedDataStructure
,DoubleVector
,Vector<DoubleVector>
,Serializable
,Iterable<Double>
A
DoubleVector
backed by an array.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.vector.DoubleVector
DoubleVector.Indirect
-
Field Summary
Fields inherited from interface io.deephaven.vector.Vector
NULL_ELEMENT_STRING
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiondouble[]
Get an array representation of the elements of this Vector.boolean
double
get
(long index) Get the element of this DoubleVector at offsetindex
.int
hashCode()
iterator
(long fromIndexInclusive, long toIndexExclusive) Returns an iterator over a slice of this vector, 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.double[]
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 io.deephaven.vector.DoubleVector
getComponentType, iterator, toString
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface io.deephaven.util.datastructures.LongSizedDataStructure
intSize, intSize
-
Field Details
-
ZERO_LENGTH_VECTOR
-
-
Constructor Details
-
DoubleVectorDirect
public DoubleVectorDirect(@NotNull @org.jetbrains.annotations.NotNull double... data)
-
-
Method Details
-
get
public double get(long index) Description copied from interface:DoubleVector
Get the element of this DoubleVector at offsetindex
. Ifindex
is not within range[0, size())
, will return thenull double
.- Specified by:
get
in interfaceDoubleVector
- Parameters:
index
- An offset into this DoubleVector- Returns:
- The element at the specified offset, or the
null double
-
subVector
Description copied from interface:Vector
Get a Vector that represents a slice of this Vector.- Specified by:
subVector
in interfaceDoubleVector
- Specified by:
subVector
in interfaceVector<DoubleVector>
- 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 interfaceDoubleVector
- Specified by:
subVectorByPositions
in interfaceVector<DoubleVector>
- 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 double[] 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 interfaceDoubleVector
- Specified by:
toArray
in interfaceVector<DoubleVector>
- Returns:
- An array representation of the elements of this Vector that must not be mutated
-
copyToArray
public double[] 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 interfaceDoubleVector
- Specified by:
copyToArray
in interfaceVector<DoubleVector>
- Returns:
- An array representation of the elements of this Vector that may be freely mutated
-
iterator
Description copied from interface:DoubleVector
Returns an iterator over a slice of this vector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator()
.- Specified by:
iterator
in interfaceDoubleVector
- 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
-
getDirect
- Specified by:
getDirect
in interfaceDoubleVector
- Specified by:
getDirect
in interfaceVector<DoubleVector>
- Returns:
- A version of this Vector that is flattened out to only reference memory
-
toString
-
equals
-
hashCode
public int hashCode()
-