diff options
Diffstat (limited to 'java/nio/IntBuffer.java')
-rw-r--r-- | java/nio/IntBuffer.java | 163 |
1 files changed, 163 insertions, 0 deletions
diff --git a/java/nio/IntBuffer.java b/java/nio/IntBuffer.java new file mode 100644 index 000000000..5d715447f --- /dev/null +++ b/java/nio/IntBuffer.java @@ -0,0 +1,163 @@ +package java.nio; +public abstract class IntBuffer extends Buffer +{ + private ByteOrder endian = ByteOrder.BIG_ENDIAN; + public static IntBuffer allocateDirect(int capacity) + { + IntBuffer b = new gnu.java.nio. IntBufferImpl(capacity, 0, capacity); + return b; + } + public static IntBuffer allocate(int capacity) + { + IntBuffer b = new gnu.java.nio. IntBufferImpl(capacity, 0, capacity); + return b; + } + final public static IntBuffer wrap(int[] array, + int offset, + int length) + { + gnu.java.nio.IntBufferImpl b = new gnu.java.nio. IntBufferImpl(array, offset, length); + return b; + } + final public static IntBuffer wrap(String a) + { + int len = a.length(); + int[] buffer = new int[len]; + for (int i=0;i<len;i++) + { + buffer[i] = (int) a.charAt(i); + } + return wrap(buffer, 0, len); + } + final public static IntBuffer wrap(int[] array) + { + return wrap(array, 0, array.length); + } + final public IntBuffer get(int[] dst, + int offset, + int length) + { + for (int i = offset; i < offset + length; i++) + { + dst[i] = get(); + } + return this; + } + final public IntBuffer get(int[] dst) + { + return get(dst, 0, dst.length); + } + final public IntBuffer put(IntBuffer src) + { + while (src.hasRemaining()) + put(src.get()); + return this; + } + final public IntBuffer put(int[] src, + int offset, + int length) + { + for (int i = offset; i < offset + length; i++) + put(src[i]); + return this; + } +public final IntBuffer put(int[] src) + { + return put(src, 0, src.length); + } +public final boolean hasArray() + { + return false; + } + public final int[] array() + { + return null; + } + public final int arrayOffset() + { + return 0; + } + public int hashCode() + { + return super.hashCode(); + } + public boolean equals(Object obj) + { + if (obj instanceof IntBuffer) + { + return compareTo(obj) == 0; + } + return false; + } + public int compareTo(Object ob) + { + IntBuffer a = (IntBuffer) ob; + if (a.remaining() != remaining()) + return 1; + if (! hasArray() || + ! a.hasArray()) + { + return 1; + } + int r = remaining(); + int i1 = pos; + int i2 = a.pos; + for (int i=0;i<r;i++) + { + int t = (int) (get(i1)- a.get(i2)); + if (t != 0) + { + return (int) t; + } + } + return 0; + } + public final ByteOrder order() + { + return endian; + } + public final IntBuffer order(ByteOrder bo) + { + endian = bo; + return this; + } + public abstract int get(); + public abstract java.nio. IntBuffer put(int b); + public abstract int get(int index); + public abstract java.nio. IntBuffer put(int index, int b); + public abstract IntBuffer compact(); + public abstract boolean isDirect(); + public abstract IntBuffer slice(); + public abstract IntBuffer duplicate(); + public abstract IntBuffer asReadOnlyBuffer(); + public abstract ShortBuffer asShortBuffer(); + public abstract CharBuffer asCharBuffer(); + public abstract IntBuffer asIntBuffer(); + public abstract LongBuffer asLongBuffer(); + public abstract FloatBuffer asFloatBuffer(); + public abstract DoubleBuffer asDoubleBuffer(); + public abstract char getChar(); + public abstract IntBuffer putChar(char value); + public abstract char getChar(int index); + public abstract IntBuffer putChar(int index, char value); + public abstract short getShort(); + public abstract IntBuffer putShort(short value); + public abstract short getShort(int index); + public abstract IntBuffer putShort(int index, short value); + public abstract int getInt(); + public abstract IntBuffer putInt(int value); + public abstract int getInt(int index); + public abstract IntBuffer putInt(int index, int value); + public abstract long getLong(); + public abstract IntBuffer putLong(long value); + public abstract long getLong(int index); + public abstract IntBuffer putLong(int index, long value); + public abstract float getFloat(); + public abstract IntBuffer putFloat(float value); + public abstract float getFloat(int index); + public abstract IntBuffer putFloat(int index, float value); + public abstract double getDouble(); + public abstract IntBuffer putDouble(double value); + public abstract double getDouble(int index); + public abstract IntBuffer putDouble(int index, double value); +} |