Package io.deephaven.vector
Interface ByteVector
- All Superinterfaces:
Comparable<ByteVector>,Iterable<Byte>,LongSizedDataStructure,Serializable,Vector<ByteVector>
- All Known Implementing Classes:
ByteRingBufferVectorWrapper,ByteSegmentedSortedMultiset,ByteSubVector,ByteVector.Indirect,ByteVectorColumnWrapper,ByteVectorDirect,ByteVectorSlice
A
Vector of primitive bytes.-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classBase class for all "indirect" ByteVector implementations. -
Field Summary
FieldsFields inherited from interface io.deephaven.vector.Vector
NULL_ELEMENT_STRING -
Method Summary
Modifier and TypeMethodDescriptionstatic StringbyteValToString(Object val) default intCompare this vector with another vector.static intcompareTo(ByteVector aVector, ByteVector bVector) Helper method forComparable.compareTo(Object)for a generic ByteVector.byte[]Get an array representation of the elements of this Vector.static booleanequals(@NotNull ByteVector aVector, @Nullable Object bObj) Helper method for implementingObject.equals(Object).byteget(long index) Get the element of this ByteVector at offsetindex.default Class<?>static inthashCode(@NotNull ByteVector vector) Helper method for implementingObject.hashCode().default ValueIteratorOfByteiterator()default ValueIteratorOfByteiterator(long fromIndexInclusive, long toIndexExclusive) Returns an iterator over a slice of this vector, with equivalent semantics tosubVector(fromIndexInclusive, toIndexExclusive).iterator().static StringprimitiveByteValToString(byte 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.byte[]toArray()Get an array representation of the elements of this Vector.default StringtoString(int prefixLength) Get a String representation of a prefix of this Vector.static StringtoString(@NotNull ByteVector vector, int prefixLength) Helper method for implementingObject.toString().static PrimitiveVectorType<ByteVector,Byte> type()Methods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface io.deephaven.util.datastructures.LongSizedDataStructure
intSize, intSize, size
-
Field Details
-
serialVersionUID
static final long serialVersionUID- See Also:
-
-
Method Details
-
type
-
get
Get the element of this ByteVector at offsetindex. Ifindexis not within range[0, size()), will return thenull byte.- Parameters:
index- An offset into this ByteVector- Returns:
- The element at the specified offset, or the
null byte
-
subVector
Description copied from interface:VectorGet a Vector that represents a slice of this Vector.- Specified by:
subVectorin interfaceVector<ByteVector>- 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 interfaceVector<ByteVector>- 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
byte[] 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 interfaceVector<ByteVector>- Returns:
- An array representation of the elements of this Vector that must not be mutated
-
copyToArray
byte[] 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 interfaceVector<ByteVector>- Returns:
- An array representation of the elements of this Vector that may be freely mutated
-
getDirect
ByteVector getDirect()- Specified by:
getDirectin interfaceVector<ByteVector>- 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 afterfromIndexInclusiveto not include- Returns:
- An iterator over the requested slice
-
getComponentType
- Specified by:
getComponentTypein interfaceVector<ByteVector>- Returns:
- The type of elements contained by this Vector
-
toString
Description copied from interface:VectorGet a String representation of a prefix of this Vector.- Specified by:
toStringin interfaceVector<ByteVector>- Parameters:
prefixLength- The number of elements to include- Returns:
- The specified prefix String representation
-
compareTo
Compare this vector with another vector.
The vectors are ordered lexicographically using Deephaven sorting rules.
- Specified by:
compareToin interfaceComparable<ByteVector>
-
byteValToString
-
primitiveByteValToString
-
toString
Helper method for implementingObject.toString().- Parameters:
vector- The ByteVector to convert to a StringprefixLength- The maximum prefix ofvectorto convert- Returns:
- The String representation of
vector
-
equals
Helper method for implementingObject.equals(Object).- Parameters:
aVector- The LHS of the equality test (always a ByteVector)bObj- The RHS of the equality test- Returns:
- Whether the two inputs are equal
-
compareTo
Helper method forComparable.compareTo(Object)for a generic ByteVector.- Parameters:
aVector- the first vector (this in compareTo)bVector- the second vector ("o" or other in compareTo)- Returns:
- -1, 0, or 1 if aVector is less than, equal to, or greater than bVector (respectively)
-
hashCode
Helper method for implementingObject.hashCode(). Follows the pattern inArrays.hashCode(byte[]).- Parameters:
vector- The ByteVector to hash- Returns:
- The hash code
-