FileDocCategorySizeDatePackage
ReadWriteIntArrayBuffer.javaAPI DocAndroid 1.5 API3585Wed May 06 22:41:04 BST 2009java.nio

ReadWriteIntArrayBuffer

public final class ReadWriteIntArrayBuffer extends IntArrayBuffer
IntArrayBuffer, ReadWriteIntArrayBuffer and ReadOnlyIntArrayBuffer compose the implementation of array based int buffers.

ReadWriteIntArrayBuffer extends IntArrayBuffer with all the write methods.

This class is marked final for runtime performance.

Fields Summary
Constructors Summary
ReadWriteIntArrayBuffer(int[] array)

        super(array);
    
ReadWriteIntArrayBuffer(int capacity)

        super(capacity);
    
ReadWriteIntArrayBuffer(int capacity, int[] backingArray, int arrayOffset)

        super(capacity, backingArray, arrayOffset);
    
Methods Summary
public java.nio.IntBufferasReadOnlyBuffer()

        return ReadOnlyIntArrayBuffer.copy(this, mark);
    
public java.nio.IntBuffercompact()

        System.arraycopy(backingArray, position + offset, backingArray, offset,
                remaining());
        position = limit - position;
        limit = capacity;
        mark = UNSET_MARK;
        return this;
    
static java.nio.ReadWriteIntArrayBuffercopy(IntArrayBuffer other, int markOfOther)

        ReadWriteIntArrayBuffer buf = new ReadWriteIntArrayBuffer(other
                .capacity(), other.backingArray, other.offset);
        buf.limit = other.limit();
        buf.position = other.position();
        buf.mark = markOfOther;
        return buf;
    
public java.nio.IntBufferduplicate()

        return copy(this, mark);
    
public booleanisReadOnly()

        return false;
    
protected int[]protectedArray()

        return backingArray;
    
protected intprotectedArrayOffset()

        return offset;
    
protected booleanprotectedHasArray()

        return true;
    
public java.nio.IntBufferput(int c)

        if (position == limit) {
            throw new BufferOverflowException();
        }
        backingArray[offset + position++] = c;
        return this;
    
public java.nio.IntBufferput(int index, int c)

        if (index < 0 || index >= limit) {
            throw new IndexOutOfBoundsException();
        }
        backingArray[offset + index] = c;
        return this;
    
public java.nio.IntBufferput(int[] src, int off, int len)

        int length = src.length;
        if (off < 0 || len < 0 || (long)off + (long)len > length) {
            throw new IndexOutOfBoundsException();
        }
        if (len > remaining()) {
            throw new BufferOverflowException();
        }
        System.arraycopy(src, off, backingArray, offset
                + position, len);
        position += len;
        return this;
    
public java.nio.IntBufferslice()

        return new ReadWriteIntArrayBuffer(remaining(), backingArray, offset
                + position);