Package io.airlift.slice
Class Slice
java.lang.Object
io.airlift.slice.Slice
- All Implemented Interfaces:
Comparable<Slice>
-
Method Summary
Modifier and TypeMethodDescriptionbyte[]Returns the byte array wrapped by this Slice.intReturns the start index the content of this slice within the byte array wrapped by this slice.voidclear()Fill the slice with zeros;voidclear(int offset, int length) intCompares a portion of this slice with a portion of the specified slice.intCompares the content of the specified buffer to the content of this buffer.copy()Returns a copy of this buffer's sub-region.copy(int index, int length) Returns a copy of the specified region.booleanCompares a portion of this slice with a portion of the specified slice.booleanCompares the specified object with this slice for equality.voidfill(byte value) Fill the slice with the specified value;bytegetByte(int index) Gets a byte at the specified absoluteindexin this buffer.byte[]getBytes()Returns a copy of this buffer as a byte array.voidgetBytes(int index, byte[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidgetBytes(int index, byte[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.byte[]getBytes(int index, int length) Returns a copy of this buffer as a byte array.voidTransfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidTransfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidgetBytes(int index, OutputStream out, int length) Transfers a portion of data from this slice into the specified stream starting at the specified absoluteindex.bytegetByteUnchecked(int index) doublegetDouble(int index) Gets a 64-bit double at the specified absoluteindexin this buffer.voidgetDoubles(int index, double[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidgetDoubles(int index, double[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.double[]getDoubles(int index, int length) Returns a copy of this buffer as a double array.doublegetDoubleUnchecked(int index) floatgetFloat(int index) Gets a 32-bit float at the specified absoluteindexin this buffer.voidgetFloats(int index, float[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidgetFloats(int index, float[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.float[]getFloats(int index, int length) Returns a copy of this buffer as a float array.floatgetFloatUnchecked(int index) getInput()Creates a slice input backed by this slice.intgetInt(int index) Gets a 32-bit integer at the specified absoluteindexin this buffer.int[]getInts(int index, int length) Returns a copy of this buffer as an int array.voidgetInts(int index, int[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidgetInts(int index, int[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.intgetIntUnchecked(int index) longgetLong(int index) Gets a 64-bit long integer at the specified absoluteindexin this buffer.long[]getLongs(int index, int length) Returns a copy of this buffer as a long array.voidgetLongs(int index, long[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidgetLongs(int index, long[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.longgetLongUnchecked(int index) Creates a slice output backed by this slice.longApproximate number of bytes retained by this slice.shortgetShort(int index) Gets a 16-bit short integer at the specified absoluteindexin this slice.short[]getShorts(int index, int length) Returns a copy of this buffer as a short array.voidgetShorts(int index, short[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.voidgetShorts(int index, short[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.shortgetShortUnchecked(int index) shortgetUnsignedByte(int index) Gets an unsigned byte at the specified absoluteindexin this buffer.longgetUnsignedInt(int index) Gets an unsigned 32-bit integer at the specified absoluteindexin this buffer.intgetUnsignedShort(int index) Gets an unsigned 16-bit short integer at the specified absoluteindexin this slice.inthashCode()Returns the hash code of this slice.inthashCode(int offset, int length) Returns the hash code of a portion of this slice.intReturns the index of the first occurrence of the pattern with this slice.intReturns the index of the first occurrence of the pattern with this slice.intindexOfByte(byte b) intindexOfByte(int b) booleanA slice is considered compact if the base object is an array, and it contains the whole array.intlength()Length of this slice.voidsetByte(int index, int value) Sets the specified byte at the specified absoluteindexin this buffer.voidsetBytes(int index, byte[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.voidsetBytes(int index, byte[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.voidTransfers data from the specified slice into this buffer starting at the specified absoluteindex.voidTransfers data from the specified slice into this buffer starting at the specified absoluteindex.voidsetBytes(int index, InputStream in, int length) Transfers data from the specified input stream into this slice starting at the specified absoluteindex.voidsetDouble(int index, double value) Sets the specified 64-bit double at the specified absoluteindexin this buffer.voidsetDoubles(int index, double[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.voidsetDoubles(int index, double[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.voidsetFloat(int index, float value) Sets the specified 32-bit float at the specified absoluteindexin this buffer.voidsetFloats(int index, float[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.voidsetFloats(int index, float[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.voidsetInt(int index, int value) Sets the specified 32-bit integer at the specified absoluteindexin this buffer.voidsetInts(int index, int[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.voidsetInts(int index, int[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.voidsetLong(int index, long value) Sets the specified 64-bit long integer at the specified absoluteindexin this buffer.voidsetLongs(int index, long[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.voidsetLongs(int index, long[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.voidsetShort(int index, int value) Sets the specified 16-bit short integer at the specified absoluteindexin this buffer.voidsetShorts(int index, short[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.voidsetShorts(int index, short[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.slice(int index, int length) Returns a slice of this buffer's sub-region.toByteBuffer(int index, int length) toString()Returns information about the slice offset, and lengthDecodes the specified portion of this slice into a string with the specified character set name.Decodes the contents of this slice into a string with the specified character set name.Decodes the contents of this slice into a string using the US_ASCII character set.toStringAscii(int index, int length) Decodes the contents of this slice into a string using the UTF-8 character set.
-
Method Details
-
length
public int length()Length of this slice. -
getRetainedSize
public long getRetainedSize()Approximate number of bytes retained by this slice. -
isCompact
public boolean isCompact()A slice is considered compact if the base object is an array, and it contains the whole array. As a result, it cannot be a view of a bigger slice. -
byteArray
public byte[] byteArray()Returns the byte array wrapped by this Slice. Callers should also take care to usebyteArrayOffset()since the contents of this Slice may not start at array index 0. -
byteArrayOffset
public int byteArrayOffset()Returns the start index the content of this slice within the byte array wrapped by this slice. -
fill
public void fill(byte value) Fill the slice with the specified value; -
clear
public void clear()Fill the slice with zeros; -
clear
public void clear(int offset, int length) -
getByte
public byte getByte(int index) Gets a byte at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 1is greater thanthis.length()
-
getByteUnchecked
public byte getByteUnchecked(int index) -
getUnsignedByte
public short getUnsignedByte(int index) Gets an unsigned byte at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 1is greater thanthis.length()
-
getShort
public short getShort(int index) Gets a 16-bit short integer at the specified absoluteindexin this slice.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 2is greater thanthis.length()
-
getShortUnchecked
public short getShortUnchecked(int index) -
getUnsignedShort
public int getUnsignedShort(int index) Gets an unsigned 16-bit short integer at the specified absoluteindexin this slice.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 2is greater thanthis.length()
-
getInt
public int getInt(int index) Gets a 32-bit integer at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 4is greater thanthis.length()
-
getIntUnchecked
public int getIntUnchecked(int index) -
getUnsignedInt
public long getUnsignedInt(int index) Gets an unsigned 32-bit integer at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 4is greater thanthis.length()
-
getLong
public long getLong(int index) Gets a 64-bit long integer at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 8is greater thanthis.length()
-
getLongUnchecked
public long getLongUnchecked(int index) -
getFloat
public float getFloat(int index) Gets a 32-bit float at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 4is greater thanthis.length()
-
getFloatUnchecked
public float getFloatUnchecked(int index) -
getDouble
public double getDouble(int index) Gets a 64-bit double at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 8is greater thanthis.length()
-
getDoubleUnchecked
public double getDoubleUnchecked(int index) -
getBytes
Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + destination.length()is greater thanthis.length()
-
getBytes
Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Parameters:
destinationIndex- the first index of the destinationlength- the number of bytes to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifieddestinationIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifdestinationIndex + lengthis greater thandestination.length()
-
getBytes
public void getBytes(int index, byte[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + destination.lengthis greater thanthis.length()
-
getBytes
public void getBytes(int index, byte[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Parameters:
destinationIndex- the first index of the destinationlength- the number of bytes to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifieddestinationIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifdestinationIndex + lengthis greater thandestination.length
-
getBytes
public byte[] getBytes()Returns a copy of this buffer as a byte array. -
getBytes
public byte[] getBytes(int index, int length) Returns a copy of this buffer as a byte array.- Parameters:
index- the absolute index to start atlength- the number of bytes to return- Throws:
IndexOutOfBoundsException- if the specifiedindexis less then0, or if the specifiedindex + lengthis greater thanthis.length()
-
getBytes
Transfers a portion of data from this slice into the specified stream starting at the specified absoluteindex.- Parameters:
length- the number of bytes to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0or ifindex + lengthis greater thanthis.length()IOException- if the specified stream threw an exception during I/O
-
getShorts
public short[] getShorts(int index, int length) Returns a copy of this buffer as a short array.- Parameters:
index- the absolute index to start atlength- the number of shorts to return- Throws:
IndexOutOfBoundsException- if the specifiedindexis less then0, or if the specifiedindex + lengthis greater thanthis.length()
-
getShorts
public void getShorts(int index, short[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + destination.lengthis greater thanthis.length()
-
getShorts
public void getShorts(int index, short[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Parameters:
destinationIndex- the first index of the destinationlength- the number of shorts to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifieddestinationIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifdestinationIndex + lengthis greater thandestination.length
-
getInts
public int[] getInts(int index, int length) Returns a copy of this buffer as an int array.- Parameters:
index- the absolute index to start atlength- the number of ints to return- Throws:
IndexOutOfBoundsException- if the specifiedindexis less then0, or if the specifiedindex + lengthis greater thanthis.length()
-
getInts
public void getInts(int index, int[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + destination.lengthis greater thanthis.length()
-
getInts
public void getInts(int index, int[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Parameters:
destinationIndex- the first index of the destinationlength- the number of ints to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifieddestinationIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifdestinationIndex + lengthis greater thandestination.length
-
getLongs
public long[] getLongs(int index, int length) Returns a copy of this buffer as a long array.- Parameters:
index- the absolute index to start atlength- the number of longs to return- Throws:
IndexOutOfBoundsException- if the specifiedindexis less then0, or if the specifiedindex + lengthis greater thanthis.length()
-
getLongs
public void getLongs(int index, long[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + destination.lengthis greater thanthis.length()
-
getLongs
public void getLongs(int index, long[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Parameters:
destinationIndex- the first index of the destinationlength- the number of longs to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifieddestinationIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifdestinationIndex + lengthis greater thandestination.length
-
getFloats
public float[] getFloats(int index, int length) Returns a copy of this buffer as a float array.- Parameters:
index- the absolute index to start atlength- the number of floats to return- Throws:
IndexOutOfBoundsException- if the specifiedindexis less then0, or if the specifiedindex + lengthis greater thanthis.length()
-
getFloats
public void getFloats(int index, float[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + destination.lengthis greater thanthis.length()
-
getFloats
public void getFloats(int index, float[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Parameters:
destinationIndex- the first index of the destinationlength- the number of floats to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifieddestinationIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifdestinationIndex + lengthis greater thandestination.length
-
getDoubles
public double[] getDoubles(int index, int length) Returns a copy of this buffer as a double array.- Parameters:
index- the absolute index to start atlength- the number of doubles to return- Throws:
IndexOutOfBoundsException- if the specifiedindexis less then0, or if the specifiedindex + lengthis greater thanthis.length()
-
getDoubles
public void getDoubles(int index, double[] destination) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + destination.lengthis greater thanthis.length()
-
getDoubles
public void getDoubles(int index, double[] destination, int destinationIndex, int length) Transfers a portion of data from this slice into the specified destination starting at the specified absoluteindex.- Parameters:
destinationIndex- the first index of the destinationlength- the number of doubles to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifieddestinationIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifdestinationIndex + lengthis greater thandestination.length
-
setByte
public void setByte(int index, int value) Sets the specified byte at the specified absoluteindexin this buffer. The 24 high-order bits of the specified value are ignored.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 1is greater thanthis.length()
-
setShort
public void setShort(int index, int value) Sets the specified 16-bit short integer at the specified absoluteindexin this buffer. The 16 high-order bits of the specified value are ignored.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 2is greater thanthis.length()
-
setInt
public void setInt(int index, int value) Sets the specified 32-bit integer at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 4is greater thanthis.length()
-
setLong
public void setLong(int index, long value) Sets the specified 64-bit long integer at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 8is greater thanthis.length()
-
setFloat
public void setFloat(int index, float value) Sets the specified 32-bit float at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 4is greater thanthis.length()
-
setDouble
public void setDouble(int index, double value) Sets the specified 64-bit double at the specified absoluteindexin this buffer.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0orindex + 8is greater thanthis.length()
-
setBytes
Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.length()is greater thanthis.length()
-
setBytes
Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Parameters:
sourceIndex- the first index of the sourcelength- the number of bytes to transfer- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifiedsourceIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifsourceIndex + lengthis greater thansource.length()
-
setBytes
public void setBytes(int index, byte[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.lengthis greater thanthis.length()
-
setBytes
public void setBytes(int index, byte[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifiedsourceIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifsourceIndex + lengthis greater thansource.length
-
setBytes
Transfers data from the specified input stream into this slice starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.lengthis greater thanthis.length()IOException
-
setShorts
public void setShorts(int index, short[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.lengthis greater thanthis.length()
-
setShorts
public void setShorts(int index, short[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifiedsourceIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifsourceIndex + lengthis greater thansource.length
-
setInts
public void setInts(int index, int[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.lengthis greater thanthis.length()
-
setInts
public void setInts(int index, int[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifiedsourceIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifsourceIndex + lengthis greater thansource.length
-
setLongs
public void setLongs(int index, long[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.lengthis greater thanthis.length()
-
setLongs
public void setLongs(int index, long[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifiedsourceIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifsourceIndex + lengthis greater thansource.length
-
setFloats
public void setFloats(int index, float[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.lengthis greater thanthis.length()
-
setFloats
public void setFloats(int index, float[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifiedsourceIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifsourceIndex + lengthis greater thansource.length
-
setDoubles
public void setDoubles(int index, double[] source) Transfers data from the specified slice into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, or ifindex + source.lengthis greater thanthis.length()
-
setDoubles
public void setDoubles(int index, double[] source, int sourceIndex, int length) Transfers data from the specified array into this buffer starting at the specified absoluteindex.- Throws:
IndexOutOfBoundsException- if the specifiedindexis less than0, if the specifiedsourceIndexis less than0, ifindex + lengthis greater thanthis.length(), or ifsourceIndex + lengthis greater thansource.length
-
slice
Returns a slice of this buffer's sub-region. Modifying the content of the returned buffer, or this buffer affects each other's content. -
copy
Returns a copy of this buffer's sub-region. Modifying the content of the returned buffer does not affect this buffer, and vice versa. -
copy
Returns a copy of the specified region. Modifying the content of the returned buffer does not affect this buffer, and vice versa. -
indexOfByte
public int indexOfByte(int b) -
indexOfByte
public int indexOfByte(byte b) -
indexOf
Returns the index of the first occurrence of the pattern with this slice. If the pattern is not found -1 is returned. If patten is empty, zero is returned. -
indexOf
Returns the index of the first occurrence of the pattern with this slice. If the pattern is not found -1 is returned. If patten is empty, the offset is returned. -
compareTo
Compares the content of the specified buffer to the content of this buffer. This comparison is performed byte by byte using an unsigned comparison.- Specified by:
compareToin interfaceComparable<Slice>
-
compareTo
Compares a portion of this slice with a portion of the specified slice. Equality is solely based on the contents of the slice. -
equals
Compares the specified object with this slice for equality. Equality is solely based on the contents of the slice. -
hashCode
public int hashCode()Returns the hash code of this slice. The hash code is cached once calculated, and any future changes to the slice will not affect the hash code. -
hashCode
public int hashCode(int offset, int length) Returns the hash code of a portion of this slice. -
equals
Compares a portion of this slice with a portion of the specified slice. Equality is solely based on the contents of the slice. -
getInput
Creates a slice input backed by this slice. Any changes to this slice will be immediately visible to the slice input. -
getOutput
Creates a slice output backed by this slice. Any data written to the slice output will be immediately visible in this slice. -
toString
Decodes the contents of this slice into a string with the specified character set name. -
toStringUtf8
Decodes the contents of this slice into a string using the UTF-8 character set. -
toStringAscii
Decodes the contents of this slice into a string using the US_ASCII character set. The low-order 7 bits of each byte are converted directly into a code point for the string. -
toStringAscii
-
toString
Decodes the specified portion of this slice into a string with the specified character set name. -
toByteBuffer
-
toByteBuffer
-
toString
Returns information about the slice offset, and length
-