Package io.deephaven.vector
Interface DoubleVector
- All Superinterfaces:
Iterable<Double>
,LongSizedDataStructure
,Serializable
,Vector<DoubleVector>
- All Known Implementing Classes:
DoubleRingBufferVectorWrapper
,DoubleSegmentedSortedMultiset
,DoubleSubVector
,DoubleVector.Indirect
,DoubleVectorColumnWrapper
,DoubleVectorDirect
,DoubleVectorSlice
A
Vector
of primitive doubles.-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
Base class for all "indirect" DoubleVector implementations. -
Field Summary
Fields inherited from interface io.deephaven.vector.Vector
NULL_ELEMENT_STRING
-
Method Summary
Modifier and TypeMethodDescriptiondouble[]
Get an array representation of the elements of this Vector.static String
doubleValToString
(Object val) static boolean
equals
(@NotNull DoubleVector aVector, @Nullable Object bObj) Helper method for implementingObject.equals(Object)
.double
get
(long index) Get the element of this DoubleVector at offsetindex
.default Class<?>
static int
hashCode
(@NotNull DoubleVector vector) Helper method for implementingObject.hashCode()
.iterator()
iterator
(long fromIndexInclusive, long toIndexExclusive) Returns an iterator over a slice of this vector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator()
.static String
primitiveDoubleValToString
(double val) 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.default String
toString
(int prefixLength) Get a String representation of a prefix of this Vector.static String
toString
(@NotNull DoubleVector vector, int prefixLength) Helper method for implementingObject.toString()
.static PrimitiveVectorType<DoubleVector,
Double> type()
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface io.deephaven.util.datastructures.LongSizedDataStructure
intSize, intSize, size
-
Field Details
-
serialVersionUID
static final long serialVersionUID- See Also:
-
-
Method Details
-
type
-
get
double get(long index) Get the element of this DoubleVector at offsetindex
. Ifindex
is not within range[0, size())
, will return thenull double
.- 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 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 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
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 interfaceVector<DoubleVector>
- Returns:
- An array representation of the elements of this Vector that must not be mutated
-
copyToArray
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 interfaceVector<DoubleVector>
- Returns:
- An array representation of the elements of this Vector that may be freely mutated
-
getDirect
DoubleVector getDirect()- Specified by:
getDirect
in interfaceVector<DoubleVector>
- Returns:
- A version of this Vector that is flattened out to only reference memory
-
iterator
-
iterator
Returns an iterator over a slice of this vector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator()
.- Parameters:
fromIndexInclusive
- The first position to includetoIndexExclusive
- The first position afterfromIndexInclusive
to not include- Returns:
- An iterator over the requested slice
-
getComponentType
- Specified by:
getComponentType
in interfaceVector<DoubleVector>
- Returns:
- The type of elements contained by this Vector
-
toString
Description copied from interface:Vector
Get a String representation of a prefix of this Vector.- Specified by:
toString
in interfaceVector<DoubleVector>
- Parameters:
prefixLength
- The number of elements to include- Returns:
- The specified prefix String representation
-
doubleValToString
-
primitiveDoubleValToString
-
toString
Helper method for implementingObject.toString()
.- Parameters:
vector
- The DoubleVector to convert to a StringprefixLength
- The maximum prefix ofvector
to convert- Returns:
- The String representation of
vector
-
equals
Helper method for implementingObject.equals(Object)
.- Parameters:
aVector
- The LHS of the equality test (always a DoubleVector)bObj
- The RHS of the equality test- Returns:
- Whether the two inputs are equal
-
hashCode
Helper method for implementingObject.hashCode()
. Follows the pattern inArrays.hashCode(double[])
.- Parameters:
vector
- The DoubleVector to hash- Returns:
- The hash code
-