java.nio

Class CharBuffer

public abstract class CharBuffer extends Buffer implements Comparable<CharBuffer>, CharSequence, Readable, Appendable

Since: 1.4

Method Summary
static CharBufferallocate(int capacity)
Allocates a new CharBuffer object with a given capacity.
CharBufferappend(char c)
CharBufferappend(CharSequence cs)
CharBufferappend(CharSequence cs, int start, int end)
char[]array()
Returns the char array that backs this buffer.
intarrayOffset()
Returns the offset within this buffer's backing array of the first element.
abstract CharBufferasReadOnlyBuffer()
Creates a new read-only CharBuffer that shares this buffer's content.
charcharAt(int index)
Returns the character at position() + index.
abstract CharBuffercompact()
Compacts this buffer.
intcompareTo(CharBuffer other)
Compares two CharBuffer objects.
abstract CharBufferduplicate()
Creates a new CharBuffer that shares this buffer's content.
booleanequals(Object obj)
Checks if this buffer is equal to obj.
CharBufferget(char[] dst, int offset, int length)
This method transfers chars from this buffer into the given destination array.
CharBufferget(char[] dst)
This method transfers chars from this buffer into the given destination array.
abstract charget()
Reads the char at this buffer's current position, and then increments the position.
abstract charget(int index)
Absolute get method.
booleanhasArray()
Tells whether ot not this buffer is backed by an accessible char array.
inthashCode()
Calculates a hash code for this buffer.
abstract booleanisDirect()
Tells wether or not this buffer is direct.
intlength()
Returns the length of the remaining chars in this buffer.
abstract ByteOrderorder()
Returns the byte order of this buffer.
CharBufferput(CharBuffer src)
Writes the content of the the CharBUFFER src into the buffer.
CharBufferput(char[] src, int offset, int length)
Writes the content of the the char array src into the buffer.
CharBufferput(char[] src)
Writes the content of the the char array src into the buffer.
abstract CharBufferput(char b)
Writes the char at this buffer's current position, and then increments the position.
abstract CharBufferput(int index, char b)
Absolute put method.
CharBufferput(String str, int start, int length)
Relative put method.
CharBufferput(String str)
Relative put method.
intread(CharBuffer buffer)
abstract CharBufferslice()
Creates a new CharBuffer whose content is a shared subsequence of this buffer's content.
abstract CharSequencesubSequence(int start, int length)
Creates a new character buffer that represents the specified subsequence of this buffer, relative to the current position.
StringtoString()
Returns the remaining content of the buffer as a string.
static CharBufferwrap(char[] array, int offset, int length)
Wraps a char array into a CharBuffer object.
static CharBufferwrap(CharSequence seq)
Wraps a character sequence into a CharBuffer object.
static CharBufferwrap(CharSequence seq, int start, int end)
Wraps a character sequence into a CharBuffer object.
static CharBufferwrap(char[] array)
Wraps a char array into a CharBuffer object.

Method Detail

allocate

public static CharBuffer allocate(int capacity)
Allocates a new CharBuffer object with a given capacity.

append

public CharBuffer append(char c)

Since: 1.5

append

public CharBuffer append(CharSequence cs)

Since: 1.5

append

public CharBuffer append(CharSequence cs, int start, int end)

Since: 1.5

array

public final char[] array()
Returns the char array that backs this buffer.

Throws: ReadOnlyBufferException If this buffer is read-only. UnsupportedOperationException If this buffer is not backed by an accessible array.

arrayOffset

public final int arrayOffset()
Returns the offset within this buffer's backing array of the first element.

Throws: ReadOnlyBufferException If this buffer is read-only. UnsupportedOperationException If this buffer is not backed by an accessible array.

asReadOnlyBuffer

public abstract CharBuffer asReadOnlyBuffer()
Creates a new read-only CharBuffer that shares this buffer's content.

charAt

public final char charAt(int index)
Returns the character at position() + index.

Throws: IndexOutOfBoundsException If index is negative not smaller than remaining().

compact

public abstract CharBuffer compact()
Compacts this buffer.

Throws: ReadOnlyBufferException If this buffer is read-only.

compareTo

public int compareTo(CharBuffer other)
Compares two CharBuffer objects.

Throws: ClassCastException If obj is not an object derived from CharBuffer.

duplicate

public abstract CharBuffer duplicate()
Creates a new CharBuffer that shares this buffer's content.

equals

public boolean equals(Object obj)
Checks if this buffer is equal to obj.

get

public CharBuffer get(char[] dst, int offset, int length)
This method transfers chars from this buffer into the given destination array. Before the transfer, it checks if there are fewer than length chars remaining in this buffer.

Parameters: dst The destination array offset The offset within the array of the first char to be written; must be non-negative and no larger than dst.length. length The maximum number of bytes to be written to the given array; must be non-negative and no larger than dst.length - offset.

Throws: BufferUnderflowException If there are fewer than length chars remaining in this buffer. IndexOutOfBoundsException If the preconditions on the offset and length parameters do not hold.

get

public CharBuffer get(char[] dst)
This method transfers chars from this buffer into the given destination array.

Parameters: dst The byte array to write into.

Throws: BufferUnderflowException If there are fewer than dst.length chars remaining in this buffer.

get

public abstract char get()
Reads the char at this buffer's current position, and then increments the position.

Throws: BufferUnderflowException If there are no remaining chars in this buffer.

get

public abstract char get(int index)
Absolute get method.

Throws: IndexOutOfBoundsException If index is negative or not smaller than the buffer's limit.

hasArray

public final boolean hasArray()
Tells whether ot not this buffer is backed by an accessible char array.

hashCode

public int hashCode()
Calculates a hash code for this buffer. This is done with int arithmetic, where ** represents exponentiation, by this formula:
s[position()] + 31 + (s[position()+1] + 30)*31**1 + ... + (s[limit()-1]+30)*31**(limit()-1). Where s is the buffer data. Note that the hashcode is dependent on buffer content, and therefore is not useful if the buffer content may change.

isDirect

public abstract boolean isDirect()
Tells wether or not this buffer is direct.

length

public final int length()
Returns the length of the remaining chars in this buffer.

order

public abstract ByteOrder order()
Returns the byte order of this buffer.

put

public CharBuffer put(CharBuffer src)
Writes the content of the the CharBUFFER src into the buffer. Before the transfer, it checks if there is fewer than src.remaining() space remaining in this buffer.

Parameters: src The source data.

Throws: BufferOverflowException If there is insufficient space in this buffer for the remaining chars in the source buffer. IllegalArgumentException If the source buffer is this buffer. ReadOnlyBufferException If this buffer is read-only.

put

public CharBuffer put(char[] src, int offset, int length)
Writes the content of the the char array src into the buffer. Before the transfer, it checks if there is fewer than length space remaining in this buffer.

Parameters: src The array to copy into the buffer. offset The offset within the array of the first byte to be read; must be non-negative and no larger than src.length. length The number of bytes to be read from the given array; must be non-negative and no larger than src.length - offset.

Throws: BufferOverflowException If there is insufficient space in this buffer for the remaining chars in the source array. IndexOutOfBoundsException If the preconditions on the offset and length parameters do not hold ReadOnlyBufferException If this buffer is read-only.

put

public final CharBuffer put(char[] src)
Writes the content of the the char array src into the buffer.

Parameters: src The array to copy into the buffer.

Throws: BufferOverflowException If there is insufficient space in this buffer for the remaining chars in the source array. ReadOnlyBufferException If this buffer is read-only.

put

public abstract CharBuffer put(char b)
Writes the char at this buffer's current position, and then increments the position.

Throws: BufferOverflowException If there no remaining chars in this buffer. ReadOnlyBufferException If this buffer is read-only.

put

public abstract CharBuffer put(int index, char b)
Absolute put method.

Throws: IndexOutOfBoundsException If index is negative or not smaller than the buffer's limit. ReadOnlyBufferException If this buffer is read-only.

put

public CharBuffer put(String str, int start, int length)
Relative put method.

Throws: BufferOverflowException If there is insufficient space in this buffer. IndexOutOfBoundsException If the preconditions on the start and end parameters do not hold. ReadOnlyBufferException If this buffer is read-only.

put

public final CharBuffer put(String str)
Relative put method.

Throws: BufferOverflowException If there is insufficient space in this buffer. ReadOnlyBufferException If this buffer is read-only.

read

public int read(CharBuffer buffer)

Since: 1.5

slice

public abstract CharBuffer slice()
Creates a new CharBuffer whose content is a shared subsequence of this buffer's content.

subSequence

public abstract CharSequence subSequence(int start, int length)
Creates a new character buffer that represents the specified subsequence of this buffer, relative to the current position.

Throws: IndexOutOfBoundsException If the preconditions on start and end do not hold.

toString

public String toString()
Returns the remaining content of the buffer as a string.

wrap

public static final CharBuffer wrap(char[] array, int offset, int length)
Wraps a char array into a CharBuffer object.

Parameters: array the array to wrap offset the offset of the region in the array to wrap length the length of the region in the array to wrap

Returns: a new CharBuffer object

Throws: IndexOutOfBoundsException If the preconditions on the offset and length parameters do not hold

wrap

public static final CharBuffer wrap(CharSequence seq)
Wraps a character sequence into a CharBuffer object.

Parameters: seq the sequence to wrap

Returns: a new CharBuffer object

wrap

public static final CharBuffer wrap(CharSequence seq, int start, int end)
Wraps a character sequence into a CharBuffer object.

Parameters: seq the sequence to wrap start the index of the first character to wrap end the index of the first character not to wrap

Returns: a new CharBuffer object

Throws: IndexOutOfBoundsException If the preconditions on the offset and length parameters do not hold

wrap

public static final CharBuffer wrap(char[] array)
Wraps a char array into a CharBuffer object.

Parameters: array the array to wrap

Returns: a new CharBuffer object