FileDocCategorySizeDatePackage
CharArrayBuffer.javaAPI DocAndroid 1.5 API3098Wed May 06 22:41:04 BST 2009java.nio

CharArrayBuffer

public abstract class CharArrayBuffer extends CharBuffer
CharArrayBuffer, ReadWriteCharArrayBuffer and ReadOnlyCharArrayBuffer compose the implementation of array based char buffers.

CharArrayBuffer implements all the shared readonly methods and is extended by the other two classes.

All methods are marked final for runtime performance.

Fields Summary
protected final char[]
backingArray
protected final int
offset
Constructors Summary
CharArrayBuffer(char[] array)

        this(array.length, array, 0);
    
CharArrayBuffer(int capacity)

        this(capacity, new char[capacity], 0);
    
CharArrayBuffer(int capacity, char[] backingArray, int offset)

        super(capacity);
        this.backingArray = backingArray;
        this.offset = offset;
    
Methods Summary
public final charget()

        if (position == limit) {
            throw new BufferUnderflowException();
        }
        return backingArray[offset + position++];
    
public final charget(int index)

        if (index < 0 || index >= limit) {
            throw new IndexOutOfBoundsException();
        }
        return backingArray[offset + index];
    
public final java.nio.CharBufferget(char[] dest, int off, int len)

        int length = dest.length;
        if ((off < 0 ) || (len < 0) || (long)off + (long)len > length) {
            throw new IndexOutOfBoundsException();
        }
        if (len > remaining()) {
            throw new BufferUnderflowException();
        }
        System.arraycopy(backingArray, offset+position, dest, off, len);
        position += len;
        return this;
    
public final booleanisDirect()

        return false;
    
public final java.nio.ByteOrderorder()

        return ByteOrder.nativeOrder();
    
public final java.lang.CharSequencesubSequence(int start, int end)

        if (start < 0 || end < start || end > remaining()) {
            throw new IndexOutOfBoundsException();
        }
        
        CharBuffer result = duplicate();
        result.limit(position + end);
        result.position(position + start);
        return result;
    
public final java.lang.StringtoString()

        return String.copyValueOf(backingArray, offset + position, remaining());