Package io.deephaven.vector
Class DoubleVectorDirect
java.lang.Object
io.deephaven.vector.DoubleVectorDirect
- All Implemented Interfaces:
LongSizedDataStructure,DoubleVector,Vector<DoubleVector>,Serializable,Comparable<DoubleVector>,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
FieldsFields inherited from interface io.deephaven.vector.Vector
NULL_ELEMENT_STRING -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintCompare this vector with another vector.double[]Get an array representation of the elements of this Vector.booleandoubleget(long index) Get the element of this DoubleVector at offsetindex.inthashCode()iterator(long fromIndexInclusive, long toIndexExclusive) Returns an iterator over a slice of this vector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator().longsize()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, waitMethods inherited from interface io.deephaven.vector.DoubleVector
getComponentType, iterator, toStringMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods 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:DoubleVectorGet the element of this DoubleVector at offsetindex. Ifindexis not within range[0, size()), will return thenull double.- Specified by:
getin interfaceDoubleVector- Parameters:
index- An offset into this DoubleVector- Returns:
- The element at the specified offset, or the
null double
-
subVector
Description copied from interface:VectorGet a Vector that represents a slice of this Vector.- Specified by:
subVectorin interfaceDoubleVector- Specified by:
subVectorin 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:VectorGet a Vector that represents a set of offset positions in this Vector.- Specified by:
subVectorByPositionsin interfaceDoubleVector- Specified by:
subVectorByPositionsin 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:VectorGet 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:
toArrayin interfaceDoubleVector- Specified by:
toArrayin 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:VectorGet 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:
copyToArrayin interfaceDoubleVector- Specified by:
copyToArrayin interfaceVector<DoubleVector>- Returns:
- An array representation of the elements of this Vector that may be freely mutated
-
iterator
Description copied from interface:DoubleVectorReturns an iterator over a slice of this vector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator().- Specified by:
iteratorin interfaceDoubleVector- Parameters:
fromIndexInclusive- The first position to includetoIndexExclusive- The first position afterfromIndexInclusiveto not include- Returns:
- An iterator over the requested slice
-
size
public long size()Description copied from interface:LongSizedDataStructureThe size of this data structure.- Specified by:
sizein interfaceLongSizedDataStructure- Returns:
- The size
-
getDirect
- Specified by:
getDirectin interfaceDoubleVector- Specified by:
getDirectin interfaceVector<DoubleVector>- Returns:
- A version of this Vector that is flattened out to only reference memory
-
toString
-
equals
-
compareTo
Description copied from interface:DoubleVectorCompare this vector with another vector.
The vectors are ordered lexicographically using Deephaven sorting rules.
- Specified by:
compareToin interfaceComparable<DoubleVector>- Specified by:
compareToin interfaceDoubleVector
-
hashCode
public int hashCode()
-