Build 1.0_r1(from source)

java.nio
Class CharSequenceAdapter

java.lang.Object
  extended by java.nio.Buffer
      extended by java.nio.CharBuffer
          extended by java.nio.CharSequenceAdapter
All Implemented Interfaces:
Appendable, CharSequence, Comparable<CharBuffer>, Readable

final class CharSequenceAdapter
extends CharBuffer

This class wraps a char sequence to be a char buffer.

Implementation notice:


Field Summary
(package private)  CharSequence sequence
           
 
Fields inherited from class java.nio.Buffer
_elementSizeShift, capacity, limit, mark, position, UNSET_MARK
 
Constructor Summary
CharSequenceAdapter(CharSequence chseq)
           
 
Method Summary
 CharBuffer asReadOnlyBuffer()
          Returns a readonly buffer that shares content with this buffer.
 CharBuffer compact()
          Compacts this char buffer.
(package private) static CharSequenceAdapter copy(CharSequenceAdapter other)
           
 CharBuffer duplicate()
          Returns a duplicated buffer that shares content with this buffer.
 char get()
          Returns the char at the current position and increase the position by 1.
 CharBuffer get(char[] dest, int off, int len)
          Reads chars from the current position into the specified char array, starting from the specified offset, and increase the position by the number of chars read.
 char get(int index)
          Returns a char at the specified index, and the position is not changed.
 boolean isDirect()
          Returns true if this buffer is direct.
 boolean isReadOnly()
          Returns whether this buffer is readonly or not.
 ByteOrder order()
          Returns the byte order used by this buffer when converting chars from/to bytes.
protected  char[] protectedArray()
          Child class implements this method to realize array().
protected  int protectedArrayOffset()
          Child class implements this method to realize arrayOffset().
protected  boolean protectedHasArray()
          Child class implements this method to realize hasArray().
 CharBuffer put(char c)
          Writes the given char to the current position and increase the position by 1.
 CharBuffer put(char[] src, int off, int len)
          Writes chars in the given char array, starting from the specified offset, to the current position and increase the position by the number of chars written.
 CharBuffer put(int index, char c)
          Write a char to the specified index of this buffer and the position is not changed.
 CharBuffer put(String src, int start, int end)
          Write chars of the given string to the current position of this buffer, and increase the position by the number of chars written.
 CharBuffer slice()
          Returns a sliced buffer that shares content with this buffer.
 CharSequence subSequence(int start, int end)
          Returns a new char buffer represents a sub-sequence of this buffer's current remaining content.
 
Methods inherited from class java.nio.CharBuffer
_array, _arrayOffset, allocate, append, append, append, array, arrayOffset, charAt, compareTo, equals, get, hasArray, hashCode, length, put, put, put, read, toString, wrap, wrap, wrap, wrap
 
Methods inherited from class java.nio.Buffer
capacity, clear, flip, hasRemaining, limit, limit, mark, position, position, remaining, reset, rewind
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

sequence

final CharSequence sequence
Constructor Detail

CharSequenceAdapter

CharSequenceAdapter(CharSequence chseq)
Method Detail

copy

static CharSequenceAdapter copy(CharSequenceAdapter other)

asReadOnlyBuffer

public CharBuffer asReadOnlyBuffer()
Description copied from class: CharBuffer
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.

Specified by:
asReadOnlyBuffer in class CharBuffer
Returns:
A readonly version of this buffer.

compact

public CharBuffer compact()
Description copied from class: CharBuffer
Compacts this char buffer.

The remaining chars 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.

Specified by:
compact in class CharBuffer
Returns:
This buffer

duplicate

public CharBuffer duplicate()
Description copied from class: CharBuffer
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.

Specified by:
duplicate in class CharBuffer
Returns:
A duplicated buffer that shares content with this buffer.

get

public char get()
Description copied from class: CharBuffer
Returns the char at the current position and increase the position by 1.

Specified by:
get in class CharBuffer
Returns:
The char at the current position.

get

public char get(int index)
Description copied from class: CharBuffer
Returns a char at the specified index, and the position is not changed.

Specified by:
get in class CharBuffer
Parameters:
index - The index, must be no less than zero and less than limit
Returns:
A char at the specified index.

get

public final CharBuffer get(char[] dest,
                            int off,
                            int len)
Description copied from class: CharBuffer
Reads chars from the current position into the specified char array, starting from the specified offset, and increase the position by the number of chars read.

Overrides:
get in class CharBuffer
Parameters:
dest - The target char array
off - The offset of the char array, must be no less than zero and no greater than dest.length
len - The number of chars to read, must be no less than zero and no greater than dest.length - off
Returns:
This buffer

isDirect

public boolean isDirect()
Description copied from class: CharBuffer
Returns true if this buffer is direct.

A direct buffer will try its best to take advantage of native memory APIs and it may not stay in java heap, thus not affected by GC.

A char buffer is direct, if it is based on a byte buffer and the byte buffer is direct.

Specified by:
isDirect in class CharBuffer
Returns:
True if this buffer is direct.

isReadOnly

public boolean isReadOnly()
Description copied from class: Buffer
Returns whether this buffer is readonly or not.

Specified by:
isReadOnly in class Buffer
Returns:
Whether this buffer is readonly or not.

order

public ByteOrder order()
Description copied from class: CharBuffer
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 always return the platform's native byte order.

Specified by:
order in class CharBuffer
Returns:
The byte order used by this buffer when converting chars from/to bytes.

protectedArray

protected char[] protectedArray()
Description copied from class: CharBuffer
Child class implements this method to realize array().

Specified by:
protectedArray in class CharBuffer
Returns:
see array()

protectedArrayOffset

protected int protectedArrayOffset()
Description copied from class: CharBuffer
Child class implements this method to realize arrayOffset().

Specified by:
protectedArrayOffset in class CharBuffer
Returns:
see arrayOffset()

protectedHasArray

protected boolean protectedHasArray()
Description copied from class: CharBuffer
Child class implements this method to realize hasArray().

Specified by:
protectedHasArray in class CharBuffer
Returns:
see hasArray()

put

public CharBuffer put(char c)
Description copied from class: CharBuffer
Writes the given char to the current position and increase the position by 1.

Specified by:
put in class CharBuffer
Parameters:
c - The char to write
Returns:
This buffer

put

public CharBuffer put(int index,
                      char c)
Description copied from class: CharBuffer
Write a char to the specified index of this buffer and the position is not changed.

Specified by:
put in class CharBuffer
Parameters:
index - The index, must be no less than zero and less than the limit
c - The char to write
Returns:
This buffer

put

public final CharBuffer put(char[] src,
                            int off,
                            int len)
Description copied from class: CharBuffer
Writes chars in the given char array, starting from the specified offset, to the current position and increase the position by the number of chars written.

Overrides:
put in class CharBuffer
Parameters:
src - The source char array
off - The offset of char array, must be no less than zero and no greater than src.length
len - The number of chars to write, must be no less than zero and no greater than src.length - off
Returns:
This buffer

put

public CharBuffer put(String src,
                      int start,
                      int end)
Description copied from class: CharBuffer
Write chars of the given string to the current position of this buffer, and increase the position by the number of chars written.

Overrides:
put in class CharBuffer
Parameters:
src - The string to write
start - The first char to write, must be no less than zero and no greater than str.length()
end - The last char to write (excluding), must be less than start and no greater than str.length()
Returns:
This buffer

slice

public CharBuffer slice()
Description copied from class: CharBuffer
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.

Specified by:
slice in class CharBuffer
Returns:
A sliced buffer that shares content with this buffer.

subSequence

public CharSequence subSequence(int start,
                                int end)
Description copied from class: CharBuffer
Returns a new char buffer represents 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 same as this buffer. 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.

Specified by:
subSequence in interface CharSequence
Specified by:
subSequence in class CharBuffer
Parameters:
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 start and not be greater than the value obtained from a call to remaining()
Returns:
A new char buffer represents a sub-sequence of this buffer's current remaining content.

Build 1.0_r1(from source)

Please submit a feedback, bug or feature