| java.lang.Object | ||
| ↳ | java.nio.Buffer | |
| ↳ | java.nio.ByteBuffer | |
Known Direct Subclasses
|
A buffer of bytes.
A byte buffer can be created in either of the following ways:
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Creates a byte buffer based on a new allocated byte array.
| |||||||||||
Creates a direct byte buffer based on a new allocated memory block.
| |||||||||||
Returns the byte array which this buffer is based on, if there's one.
| |||||||||||
Returns the offset of the byte array which this buffer is based on, if
there's one.
| |||||||||||
Returns a char buffer which is based on the remaining content of
this byte buffer.
| |||||||||||
Returns a double buffer which is based on the remaining content of
this byte buffer.
| |||||||||||
Returns a float buffer which is based on the remaining content of
this byte buffer.
| |||||||||||
Returns a int buffer which is based on the remaining content of
this byte buffer.
| |||||||||||
Returns a long buffer which is based on the remaining content of
this byte buffer.
| |||||||||||
Returns a readonly buffer that shares content with this buffer.
| |||||||||||
Returns a short buffer which is based on the remaining content of
this byte buffer.
| |||||||||||
Compacts this byte buffer.
| |||||||||||
Compare the remaining
bytes of this buffer to another
byte buffer's remaining bytes. | |||||||||||
Returns a duplicated buffer that shares content with this buffer.
| |||||||||||
Tests whether this byte buffer equals to another object.
| |||||||||||
Returns the byte at the current position and increase the position by 1.
| |||||||||||
Reads
bytes from the current position into the specified
byte array, starting from the specified offset, and increase the position
by the number of bytes read. | |||||||||||
Reads
bytes from the current position into the specified
byte array and increase the position by the number of bytes
read. | |||||||||||
Returns a byte at the specified index, and the position is not changed.
| |||||||||||
Returns the char at the specified index.
| |||||||||||
Returns the char at the current position and increase the position by 2.
| |||||||||||
Returns the double at the current position and increase the position by
8.
| |||||||||||
Returns the double at the specified index.
| |||||||||||
Returns the float at the current position and increase the position by 4.
| |||||||||||
Returns the float at the specified index.
| |||||||||||
Returns the int at the specified index.
| |||||||||||
Returns the int at the current position and increase the position by 4.
| |||||||||||
Returns the long at the current position and increase the position by 8.
| |||||||||||
Returns the long at the specified index.
| |||||||||||
Returns the short at the specified index.
| |||||||||||
Returns the short at the current position and increase the position by 2.
| |||||||||||
Returns whether this buffer is based on a byte array and is read/write.
| |||||||||||
Hash code is calculated from the remaining
bytes. | |||||||||||
Returns true if this buffer is direct.
| |||||||||||
Returns the byte order used by this buffer when converting
bytes from/to other primitive types. | |||||||||||
Sets the byte order of this buffer.
| |||||||||||
Writes
bytes in the given byte array to the current
position and increase the position by the number of bytes
written. | |||||||||||
Writes the given byte to the current position and increase the position
by 1.
| |||||||||||
Write a byte to the specified index of this buffer and the position is
not changed.
| |||||||||||
Writes all the remaining
bytes of the src
byte buffer to this buffer's current position, and increase both buffers'
position by the number of bytes copied. | |||||||||||
Writes
bytes in the given byte array, starting from the
specified offset, to the current position and increase the position by
the number of bytes written. | |||||||||||
Write a char to the specified index of this buffer.
| |||||||||||
Writes the given char to the current position and increase the position
by 2.
| |||||||||||
Write a double to the specified index of this buffer.
| |||||||||||
Writes the given double to the current position and increase the position
by 8.
| |||||||||||
Write a float to the specified index of this buffer.
| |||||||||||
Writes the given float to the current position and increase the position
by 4.
| |||||||||||
Writes the given int to the current position and increase the position by
4.
| |||||||||||
Write a int to the specified index of this buffer.
| |||||||||||
Writes the given long to the current position and increase the position
by 8.
| |||||||||||
Write a long to the specified index of this buffer.
| |||||||||||
Write a short to the specified index of this buffer.
| |||||||||||
Writes the given short to the current position and increase the position
by 2.
| |||||||||||
Returns a sliced buffer that shares content with this buffer.
| |||||||||||
Returns a string represents the state of this byte buffer.
| |||||||||||
Creates a new byte buffer by wrapping the given byte array.
| |||||||||||
Creates new a byte buffer by wrapping the given byte array.
| |||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class java.nio.Buffer
| |||||||||||
From class java.lang.Object
| |||||||||||
From interface java.lang.Comparable
| |||||||||||
Creates a byte buffer based on a new allocated byte array.
| capacity | The capacity of the new buffer |
|---|
| IllegalArgumentException | If capacity is less than zero
|
|---|
Creates a direct byte buffer based on a new allocated memory block.
| capacity | The capacity of the new buffer |
|---|
| IllegalArgumentException | If capacity is less than zero
|
|---|
Returns the byte array which this buffer is based on, if there's one.
| ReadOnlyBufferException | If this buffer is based on a readonly array |
|---|---|
| UnsupportedOperationException | If this buffer is not based on an array |
Returns the offset of the byte array which this buffer is based on, if there's one.
The offset is the index of the array corresponds to the zero position of the buffer.
| ReadOnlyBufferException | If this buffer is based on a readonly array |
|---|---|
| UnsupportedOperationException | If this buffer is not based on an array |
Returns a char buffer which is based on the remaining content of this byte buffer.
The new buffer's position is zero, its limit and capacity is the number of remaining bytes divided by two, and its mark is not set. The new buffer's readonly property and byte order are same as this buffer. The new buffer is direct, if this byte buffer is direct.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Returns a double buffer which is based on the remaining content of this byte buffer.
The new buffer's position is zero, its limit and capacity is the number of remaining bytes divided by two, and its mark is not set. The new buffer's readonly property and byte order are same as this buffer. The new buffer is direct, if this byte buffer is direct.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Returns a float buffer which is based on the remaining content of this byte buffer.
The new buffer's position is zero, its limit and capacity is the number of remaining bytes divided by two, and its mark is not set. The new buffer's readonly property and byte order are same as this buffer. The new buffer is direct, if this byte buffer is direct.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Returns a int buffer which is based on the remaining content of this byte buffer.
The new buffer's position is zero, its limit and capacity is the number of remaining bytes divided by two, and its mark is not set. The new buffer's readonly property and byte order are same as this buffer. The new buffer is direct, if this byte buffer is direct.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Returns a long buffer which is based on the remaining content of this byte buffer.
The new buffer's position is zero, its limit and capacity is the number of remaining bytes divided by two, and its mark is not set. The new buffer's readonly property and byte order are same as this buffer. The new buffer is direct, if this byte buffer is direct.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Returns a readonly buffer that shares content with this buffer.
The returned buffer is guaranteed to be a new instance, even this buffer is readonly itself. The new buffer's position, limit, capacity and mark are the same as this buffer.
The new buffer shares content with this buffer, which means this buffer's change of content will be visible to the new buffer. The two buffer's position, limit and mark are independent.
Returns a short buffer which is based on the remaining content of this byte buffer.
The new buffer's position is zero, its limit and capacity is the number of remaining bytes divided by two, and its mark is not set. The new buffer's readonly property and byte order are same as this buffer. The new buffer is direct, if this byte buffer is direct.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Compacts this byte buffer.
The remaining bytes will be moved to the head of the
buffer, staring from position zero. Then the position is set to
remaining(); the limit is set to capacity; the mark is
cleared.
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
|---|
Compare the remaining bytes of this buffer to another
byte buffer's remaining bytes.
| otherBuffer | Another byte buffer |
|---|
other; 0 if
this equals to other; a positive value if this is
greater than other| ClassCastException | If other is not a byte buffer
|
|---|
Returns a duplicated buffer that shares content with this buffer.
The duplicated buffer's position, limit, capacity and mark are the same as this buffer. The duplicated buffer's readonly property and byte order are same as this buffer too.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Tests whether this byte buffer equals to another object.
If other is not a byte buffer, then false is returned.
Two byte buffers are equals if, and only if, their remaining
bytes are exactly the same. Position, limit, capacity and
mark are not considered.
| other | the object to compare against |
|---|
Returns the byte at the current position and increase the position by 1.
| BufferUnderflowException | If the position is equal or greater than limit |
|---|
Reads bytes from the current position into the specified
byte array, starting from the specified offset, and increase the position
by the number of bytes read.
| dest | The target byte array |
|---|---|
| off | The offset of the byte array, must be no less than zero and no
greater than dest.length |
| len | The number of bytes to read, must be no less
than zero and no greater than dest.length - off |
| IndexOutOfBoundsException | If either off or len is
invalid |
|---|---|
| BufferUnderflowException | If len is greater than
remaining()
|
Reads bytes from the current position into the specified
byte array and increase the position by the number of bytes
read.
Calling this method has the same effect as
get(dest, 0, dest.length).
| dest | The destination byte array |
|---|
| BufferUnderflowException | if dest.length is greater than
remaining()
|
|---|
Returns a byte at the specified index, and the position is not changed.
| index | The index, must be no less than zero and less than limit |
|---|
| IndexOutOfBoundsException | If index is invalid |
|---|
Returns the char at the specified index.
The 2 bytes start from the specified index are composed into a char according to current byte order and returned. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 2 |
|---|
| IndexOutOfBoundsException | If index is invalid
|
|---|
Returns the char at the current position and increase the position by 2.
The 2 bytes start from the current position are composed into a char according to current byte order and returned. The position increases by 2.
| BufferUnderflowException | If the position is greater than limit - 2
|
|---|
Returns the double at the current position and increase the position by 8.
The 8 bytes start from the current position are composed into a double according to current byte order and returned. The position increases by 8.
| BufferUnderflowException | If the position is greater than limit - 8
|
|---|
Returns the double at the specified index.
The 8 bytes start from the specified index are composed into a double according to current byte order and returned. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 8 |
|---|
| IndexOutOfBoundsException | If index is invalid
|
|---|
Returns the float at the current position and increase the position by 4.
The 4 bytes start from the current position are composed into a float according to current byte order and returned. The position increases by 4.
| BufferUnderflowException | If the position is greater than limit - 4
|
|---|
Returns the float at the specified index.
The 4 bytes start from the specified index are composed into a float according to current byte order and returned. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 4 |
|---|
| IndexOutOfBoundsException | If index is invalid
|
|---|
Returns the int at the specified index.
The 4 bytes start from the specified index are composed into a int according to current byte order and returned. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 4 |
|---|
| IndexOutOfBoundsException | If index is invalid
|
|---|
Returns the int at the current position and increase the position by 4.
The 4 bytes start from the current position are composed into a int according to current byte order and returned. The position increases by 4.
| BufferUnderflowException | If the position is greater than limit - 4
|
|---|
Returns the long at the current position and increase the position by 8.
The 8 bytes start from the current position are composed into a long according to current byte order and returned. The position increases by 8.
| BufferUnderflowException | If the position is greater than limit - 8
|
|---|
Returns the long at the specified index.
The 8 bytes start from the specified index are composed into a long according to current byte order and returned. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 8 |
|---|
| IndexOutOfBoundsException | If index is invalid
|
|---|
Returns the short at the specified index.
The 2 bytes start from the specified index are composed into a short according to current byte order and returned. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 2 |
|---|
| IndexOutOfBoundsException | If index is invalid
|
|---|
Returns the short at the current position and increase the position by 2.
The 2 bytes start from the current position are composed into a short according to current byte order and returned. The position increases by 2.
| BufferUnderflowException | If the position is greater than limit - 2
|
|---|
Returns whether this buffer is based on a byte array and is read/write.
If this buffer is readonly, then false is returned.
Hash code is calculated from the remaining bytes.
Position, limit, capacity and mark don't affect the hash code.
bytes.
Returns true if this buffer is direct.
A byte buffer is direct, if it is based on a byte buffer and the byte buffer is direct.
Returns the byte order used by this buffer when converting
bytes from/to other primitive types.
The default byte order of byte buffer is always BIG_ENDIAN.
bytes from/to other primitive types.
Sets the byte order of this buffer.
| byteOrder | The byte order to set. If null then the order
will be LITTLE_ENDIAN. |
|---|
Writes bytes in the given byte array to the current
position and increase the position by the number of bytes
written.
Calling this method has the same effect as
put(src, 0, src.length).
| src | The source byte array |
|---|
| BufferOverflowException | If remaining() is less than
src.length |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes the given byte to the current position and increase the position by 1.
| b | The byte to write |
|---|
| BufferOverflowException | If position is equal or greater than limit |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Write a byte to the specified index of this buffer and the position is not changed.
| index | The index, must be no less than zero and less than the limit |
|---|---|
| b | The byte to write |
| IndexOutOfBoundsException | If index is invalid |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes all the remaining bytes of the src
byte buffer to this buffer's current position, and increase both buffers'
position by the number of bytes copied.
| src | The source byte buffer |
|---|
| BufferOverflowException | If src.remaining() is greater than this
buffer's remaining() |
|---|---|
| IllegalArgumentException | If src is this buffer |
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes bytes in the given byte array, starting from the
specified offset, to the current position and increase the position by
the number of bytes written.
| src | The source byte array |
|---|---|
| off | The offset of byte array, must be no less than zero and no
greater than src.length |
| len | The number of bytes to write, must be no less
than zero and no greater than src.length - off |
| BufferOverflowException | If remaining() is less than
len |
|---|---|
| IndexOutOfBoundsException | If either off or len is
invalid |
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Write a char to the specified index of this buffer.
The char is converted to bytes using the current byte order. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 2 |
|---|---|
| value | The char to write |
| IndexOutOfBoundsException | If index is invalid |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes the given char to the current position and increase the position by 2.
The char is converted to bytes using the current byte order.
| value | The char to write |
|---|
| BufferOverflowException | If position is greater than limit - 2 |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Write a double to the specified index of this buffer.
The double is converted to bytes using the current byte order. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 8 |
|---|---|
| value | The double to write |
| IndexOutOfBoundsException | If index is invalid |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes the given double to the current position and increase the position by 8.
The double is converted to bytes using the current byte order.
| value | The double to write |
|---|
| BufferOverflowException | If position is greater than limit - 8 |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Write a float to the specified index of this buffer.
The float is converted to bytes using the current byte order. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 4 |
|---|---|
| value | The float to write |
| IndexOutOfBoundsException | If index is invalid |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes the given float to the current position and increase the position by 4.
The float is converted to bytes using the current byte order.
| value | The float to write |
|---|
| BufferOverflowException | If position is greater than limit - 4 |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes the given int to the current position and increase the position by 4.
The int is converted to bytes using the current byte order.
| value | The int to write |
|---|
| BufferOverflowException | If position is greater than limit - 4 |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Write a int to the specified index of this buffer.
The int is converted to bytes using the current byte order. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 4 |
|---|---|
| value | The int to write |
| IndexOutOfBoundsException | If index is invalid |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes the given long to the current position and increase the position by 8.
The long is converted to bytes using the current byte order.
| value | The long to write |
|---|
| BufferOverflowException | If position is greater than limit - 8 |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Write a long to the specified index of this buffer.
The long is converted to bytes using the current byte order. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 8 |
|---|---|
| value | The long to write |
| IndexOutOfBoundsException | If index is invalid |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Write a short to the specified index of this buffer.
The short is converted to bytes using the current byte order. The position is not changed.
| index | The index, must be no less than zero and equal or less than
limit - 2 |
|---|---|
| value | The short to write |
| IndexOutOfBoundsException | If index is invalid |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Writes the given short to the current position and increase the position by 2.
The short is converted to bytes using the current byte order.
| value | The short to write |
|---|
| BufferOverflowException | If position is greater than limit - 2 |
|---|---|
| ReadOnlyBufferException | If no changes may be made to the contents of this buffer |
Returns a sliced buffer that shares content with this buffer.
The sliced buffer's capacity will be this buffer's
remaining(), and its zero position will correspond to
this buffer's current position. The new buffer's position will be
0, limit will be its capacity, and its mark is unset. The new buffer's
readonly property and byte order are same as this buffer.
The new buffer shares content with this buffer, which means either buffer's change of content will be visible to the other. The two buffer's position, limit and mark are independent.
Returns a string represents the state of this byte buffer.
Creates a new byte buffer by wrapping the given byte array.
Calling this method has the same effect as
wrap(array, 0, array.length).
| array | The byte array which the new buffer will be based on |
|---|
Creates new a byte buffer by wrapping the given byte array.
The new buffer's position will be start, limit will be
start + len, capacity will be the length of the array.
| array | The byte array which the new buffer will be based on |
|---|---|
| start | The start index, must be no less than zero and no greater than
array.length |
| len | The length, must be no less than zero and no greater than
array.length - start |
| IndexOutOfBoundsException | If either start or len is
invalid
|
|---|