| java.lang.Object | ||
| ↳ | java.nio.Buffer | |
| ↳ | java.nio.CharBuffer | |
A buffer of chars.
A char buffer can be created in either one of the following ways:
Allocate a new char array and create a buffer
 based on it;Wrap an existing char array to create a new
 buffer;Wrap an existing char sequence to create a
 new buffer;ByteBuffer.asCharBuffer
 to create a char buffer based on a byte buffer.| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Creates a char buffer based on a newly allocated char array. | |||||||||||
| Writes the given char to the current position and increases the position
 by 1. | |||||||||||
| Writes chars of the given  CharSequenceto the current position of
 this buffer, and increases the position by the number of chars written. | |||||||||||
| Writes all chars of the given character sequence  csqto the
 current position of this buffer, and increases the position by the length
 of the csq. | |||||||||||
| Returns the array that backs this buffer (optional operation). | |||||||||||
| Returns the offset into the array returned by  arrayof the first
 element of the buffer (optional operation). | |||||||||||
| Returns a read-only buffer that shares its content with this buffer. | |||||||||||
| Returns the character located at the given offset relative to the current position. | |||||||||||
| Compacts this char buffer. | |||||||||||
| Compare the remaining chars of this buffer to another char
 buffer's remaining chars. | |||||||||||
| Returns a duplicated buffer that shares its content with this buffer. | |||||||||||
| Checks whether this char buffer is equal to another object. | |||||||||||
| Reads chars from the current position into the specified char array,
 starting from the specified offset, and increases the position by the
 number of chars read. | |||||||||||
| Returns the char at the current position and increases the position by 1. | |||||||||||
| Returns a char at the specified index; the position is not changed. | |||||||||||
| Reads chars from the current position into the specified char array and
 increases the position by the number of chars read. | |||||||||||
| Returns true if  arrayandarrayOffsetwon't throw. | |||||||||||
| Calculates this buffer's hash code from the remaining chars. | |||||||||||
| Indicates whether this buffer is direct. | |||||||||||
| Returns the number of remaining chars. | |||||||||||
| Returns the byte order used by this buffer when converting chars from/to
 bytes. | |||||||||||
| Writes all chars of the given string to the current position of this
 buffer, and increases the position by the length of string. | |||||||||||
| Writes the given char to the current position and increases the position
 by 1. | |||||||||||
| Writes chars of the given string to the current position of this buffer,
 and increases the position by the number of chars written. | |||||||||||
| Writes a char to the specified index of this buffer; the position is not
 changed. | |||||||||||
| Writes all the remaining chars of the  srcchar buffer to this
 buffer's current position, and increases both buffers' position by the
 number of chars copied. | |||||||||||
| Writes chars from the given char array to the current position and
 increases the position by the number of chars written. | |||||||||||
| Writes chars from the given char array, starting from the specified offset,
 to the current position and increases the position by the number of chars
 written. | |||||||||||
| Reads characters from this buffer and puts them into  target. | |||||||||||
| Returns a sliced buffer that shares its content with this buffer. | |||||||||||
| Returns a new char buffer representing a sub-sequence of this buffer's
 current remaining content. | |||||||||||
| Returns a string representing the current remaining chars of this buffer. | |||||||||||
| Creates a new char buffer by wrapping the given char sequence. | |||||||||||
| Creates a new char buffer by wrapping the given char sequence. | |||||||||||
| Creates a new char buffer by wrapping the given char array. | |||||||||||
| Creates a new char buffer by wrapping the given char array. | |||||||||||
| [Expand] Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|  From class
  java.nio.Buffer | |||||||||||
|  From class
  java.lang.Object | |||||||||||
|  From interface
  java.lang.Appendable | |||||||||||
|  From interface
  java.lang.CharSequence | |||||||||||
|  From interface
  java.lang.Comparable | |||||||||||
|  From interface
  java.lang.Readable | |||||||||||
Creates a char buffer based on a newly allocated char array.
| capacity | the capacity of the new buffer. | 
|---|
| IllegalArgumentException | if capacityis less than zero. | 
|---|
Writes the given char to the current position and increases the position by 1.
| c | the char to write. | 
|---|
| BufferOverflowException | if position is equal or greater than limit. | 
|---|---|
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes chars of the given CharSequence to the current position of
 this buffer, and increases the position by the number of chars written.
| csq | the CharSequenceto write. | 
|---|---|
| start | the first char to write, must not be negative and not greater
            than csq.length(). | 
| end | the last char to write (excluding), must be less than startand not greater thancsq.length(). | 
| BufferOverflowException | if remaining()is less thanend - start. | 
|---|---|
| IndexOutOfBoundsException | if either startorendis invalid. | 
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes all chars of the given character sequence csq to the
 current position of this buffer, and increases the position by the length
 of the csq.
 
 Calling this method has the same effect as append(csq.toString()).
 If the CharSequence is null the string "null" will be
 written to the buffer.
| csq | the CharSequenceto write. | 
|---|
| BufferOverflowException | if remaining()is less than the length of csq. | 
|---|---|
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Returns the array that backs this buffer (optional operation). The returned value is the actual array, not a copy, so modifications to the array write through to the buffer.
Subclasses should override this method with a covariant return type to provide the exact type of the array.
Use hasArray to ensure this method won't throw.
 (A separate call to isReadOnly is not necessary.)
Returns the offset into the array returned by array of the first
 element of the buffer (optional operation). The backing array (if there is one)
 is not necessarily the same size as the buffer, and position 0 in the buffer is
 not necessarily the 0th element in the array. Use
 buffer.array()[offset + buffer.arrayOffset() to access element offset
 in buffer.
 
Use hasArray to ensure this method won't throw.
 (A separate call to isReadOnly is not necessary.)
Returns a read-only buffer that shares its content with this buffer.
The returned buffer is guaranteed to be a new instance, even if this buffer is read-only itself. The new buffer's position, limit, capacity and mark are the same as this buffer's.
The new buffer shares its 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 the character located at the given offset relative to the current position.
| IndexOutOfBoundsException | if index < 0orindex >= remaining(). | 
|---|
Compacts this char buffer.
 The remaining chars will be moved to the head of the buffer,
 starting 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 chars of this buffer to another char buffer's remaining chars.
| otherBuffer | another char buffer. | 
|---|
otherBuffer; 0 if
         this equals to otherBuffer; a positive value if this is
         greater than otherBuffer.| ClassCastException | if otherBufferis not a char buffer. | 
|---|
Returns a duplicated buffer that shares its content with this buffer.
The duplicated buffer's initial position, limit, capacity and mark are the same as this buffer's. The duplicated buffer's read-only property and byte order are the same as this buffer's, too.
The new buffer shares its content with this buffer, which means either buffer's change of content will be visible to the other. The two buffers' position, limit and mark are independent.
Checks whether this char buffer is equal to another object.
 If other is not a char buffer then false is returned. Two
 char buffers are equal if and only if their remaining chars are exactly
 the same. Position, limit, capacity and mark are not considered.
| other | the object to compare with this char buffer. | 
|---|
true if this char buffer is equal to other,
         false otherwise.
Reads chars from the current position into the specified char array, starting from the specified offset, and increases the position by the number of chars read.
| dst | the target char array. | 
|---|---|
| dstOffset | the offset of the char array, must not be negative and not
            greater than dst.length. | 
| charCount | The number of chars to read, must be no less than zero and no
            greater than dst.length - dstOffset. | 
| IndexOutOfBoundsException | if either dstOffsetorcharCountis invalid. | 
|---|---|
| BufferUnderflowException | if charCountis greater thanremaining(). | 
Returns the char at the current position and increases the position by 1.
| BufferUnderflowException | if the position is equal or greater than limit. | 
|---|
Returns a char at the specified index; the position is not changed.
| index | the index, must not be negative and less than limit. | 
|---|
| IndexOutOfBoundsException | if index is invalid. | 
|---|
Reads chars from the current position into the specified char array and increases the position by the number of chars read.
 Calling this method has the same effect as
 get(dst, 0, dst.length).
| dst | the destination char array. | 
|---|
| BufferUnderflowException | if dst.lengthis greater thanremaining(). | 
|---|
Returns true if array and arrayOffset won't throw. This method does not
 return true for buffers not backed by arrays because the other methods would throw
 UnsupportedOperationException, nor does it return true for buffers backed by
 read-only arrays, because the other methods would throw ReadOnlyBufferException.
Calculates this buffer's hash code from the remaining chars. The position, limit, capacity and mark don't affect the hash code.
Indicates whether this buffer is direct. A direct buffer will try its best to take advantage of native memory APIs and it may not stay in the Java heap, so it is not affected by garbage collection.
A char buffer is direct if it is based on a byte buffer and the byte buffer is direct.
true if this buffer is direct, false otherwise.
Returns the number of remaining chars.
Returns the byte order used by this buffer when converting chars from/to bytes.
If this buffer is not based on a byte buffer, then this always returns the platform's native byte order.
Writes all chars of the given string to the current position of this buffer, and increases the position by the length of string.
 Calling this method has the same effect as
 put(str, 0, str.length()).
| str | the string to write. | 
|---|
| BufferOverflowException | if remaining()is less than the length of string. | 
|---|---|
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes the given char to the current position and increases the position by 1.
| c | the char to write. | 
|---|
| BufferOverflowException | if position is equal or greater than limit. | 
|---|---|
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes chars of the given string to the current position of this buffer, and increases the position by the number of chars written.
| str | the string to write. | 
|---|---|
| start | the first char to write, must not be negative and not greater
            than str.length(). | 
| end | the last char to write (excluding), must be less than startand not greater thanstr.length(). | 
| BufferOverflowException | if remaining()is less thanend - start. | 
|---|---|
| IndexOutOfBoundsException | if either startorendis invalid. | 
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes a char to the specified index of this buffer; the position is not changed.
| index | the index, must be no less than zero and less than the limit. | 
|---|---|
| c | the char to write. | 
| IndexOutOfBoundsException | if index is invalid. | 
|---|---|
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes all the remaining chars of the src char buffer to this
 buffer's current position, and increases both buffers' position by the
 number of chars copied.
| src | the source char buffer. | 
|---|
| BufferOverflowException | if src.remaining()is greater than this buffer'sremaining(). | 
|---|---|
| IllegalArgumentException | if srcis this buffer. | 
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes chars from the given char array to the current position and increases the position by the number of chars written.
 Calling this method has the same effect as
 put(src, 0, src.length).
| src | the source char array. | 
|---|
| BufferOverflowException | if remaining()is less thansrc.length. | 
|---|---|
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Writes chars from the given char array, starting from the specified offset, to the current position and increases the position by the number of chars written.
| src | the source char array. | 
|---|---|
| srcOffset | the offset of char array, must not be negative and not greater
            than src.length. | 
| charCount | the number of chars to write, must be no less than zero and no
            greater than src.length - srcOffset. | 
| BufferOverflowException | if remaining()is less thancharCount. | 
|---|---|
| IndexOutOfBoundsException | if either srcOffsetorcharCountis invalid. | 
| ReadOnlyBufferException | if no changes may be made to the contents of this buffer. | 
Reads characters from this buffer and puts them into target. The
 number of chars that are copied is either the number of remaining chars
 in this buffer or the number of remaining chars in target,
 whichever is smaller.
| target | the target char buffer. | 
|---|
| IllegalArgumentException | if targetis this buffer. | 
|---|---|
| IOException | if an I/O error occurs. | 
| ReadOnlyBufferException | if no changes may be made to the contents of target. | 
Returns a sliced buffer that shares its 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 cleared. The new buffer's read-only property and byte order are
 same as this buffer.
 
The new buffer shares its content with this buffer, which means either buffer's change of content will be visible to the other. The two buffers' position, limit and mark are independent.
Returns a new char buffer representing a sub-sequence of this buffer's current remaining content.
 The new buffer's position will be position() + start, limit will
 be position() + end, capacity will be the same as this buffer.
 The new buffer's read-only property and byte order are the same as this
 buffer.
 
The new buffer shares its content with this buffer, which means either buffer's change of content will be visible to the other. The two buffers' position, limit and mark are independent.
| start | the start index of the sub-sequence, referenced from the
            current buffer position. Must not be less than zero and not
            greater than the value obtained from a call to remaining(). | 
|---|---|
| end | the end index of the sub-sequence, referenced from the current
            buffer position. Must not be less than startand not
            be greater than the value obtained from a call toremaining(). | 
| IndexOutOfBoundsException | if either startorendis invalid. | 
|---|
Returns a string representing the current remaining chars of this buffer.
Creates a new char buffer by wrapping the given char sequence.
 The new buffer's position will be start, limit will be
 end, capacity will be the length of the char sequence. The new
 buffer is read-only.
| cs | the char sequence which the new buffer will be based on. | 
|---|---|
| start | the start index, must not be negative and not greater than cs.length(). | 
| end | the end index, must be no less than startand no
            greater thancs.length(). | 
| IndexOutOfBoundsException | if either startorendis invalid. | 
|---|
Creates a new char buffer by wrapping the given char sequence.
 Calling this method has the same effect as
 wrap(chseq, 0, chseq.length()).
| chseq | the char sequence which the new buffer will be based on. | 
|---|
Creates a new char buffer by wrapping the given char array.
 The new buffer's position will be start, limit will be
 start + charCount, capacity will be the length of the array.
| array | the char array which the new buffer will be based on. | 
|---|---|
| start | the start index, must not be negative and not greater than array.length. | 
| charCount | the length, must not be negative and not greater than array.length - start. | 
| IndexOutOfBoundsException | if either startorcharCountis invalid. | 
|---|
Creates a new char buffer by wrapping the given char array.
 Calling this method has the same effect as
 wrap(array, 0, array.length).
| array | the char array which the new buffer will be based on. | 
|---|