java.nio
Class LongBuffer

java.lang.Object
  extended by java.nio.Buffer
      extended by java.nio.LongBuffer
All Implemented Interfaces:
Comparable<LongBuffer>

public abstract class LongBuffer
extends Buffer
implements Comparable<LongBuffer>

Since:
1.4

Method Summary
static LongBuffer allocate(int capacity)
          Allocates a new LongBuffer object with a given capacity.
 long[] array()
          Returns the long array that backs this buffer.
 int arrayOffset()
          Returns the offset within this buffer's backing array of the first element.
abstract  LongBuffer asReadOnlyBuffer()
          Creates a new read-only LongBuffer that shares this buffer's content.
abstract  LongBuffer compact()
          Compacts this buffer.
 int compareTo(LongBuffer other)
          Compares two LongBuffer objects.
abstract  LongBuffer duplicate()
          Creates a new LongBuffer that shares this buffer's content.
 boolean equals(Object obj)
          Checks if this buffer is equal to obj.
abstract  long get()
          Reads the long at this buffer's current position, and then increments the position.
abstract  long get(int index)
          Absolute get method.
 LongBuffer get(long[] dst)
          This method transfers longs from this buffer into the given destination array.
 LongBuffer get(long[] dst, int offset, int length)
          This method transfers longs from this buffer into the given destination array.
 boolean hasArray()
          Tells whether ot not this buffer is backed by an accessible long array.
 int hashCode()
          Calculates a hash code for this buffer.
abstract  boolean isDirect()
          Tells wether or not this buffer is direct.
abstract  ByteOrder order()
          Returns the byte order of this buffer.
abstract  LongBuffer put(int index, long b)
          Absolute put method.
abstract  LongBuffer put(long b)
          Writes the long at this buffer's current position, and then increments the position.
 LongBuffer put(long[] src)
          Writes the content of the the long array src into the buffer.
 LongBuffer put(long[] src, int offset, int length)
          Writes the content of the the long array src into the buffer.
 LongBuffer put(LongBuffer src)
          Writes the content of the the LongBUFFER src into the buffer.
abstract  LongBuffer slice()
          Creates a new LongBuffer whose content is a shared subsequence of this buffer's content.
static LongBuffer wrap(long[] array)
          Wraps a long array into a LongBuffer object.
static LongBuffer wrap(long[] array, int offset, int length)
          Wraps a long array into a LongBuffer object.
 
Methods inherited from class java.nio.Buffer
capacity, clear, flip, hasRemaining, isReadOnly, limit, limit, mark, position, position, remaining, reset, rewind
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

allocate

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


wrap

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

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

wrap

public static final LongBuffer wrap(long[] array)
Wraps a long array into a LongBuffer object.


get

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

Parameters:
dst - The destination array
offset - The offset within the array of the first long 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 longs remaining in this buffer.
IndexOutOfBoundsException - If the preconditions on the offset and length parameters do not hold.

get

public LongBuffer get(long[] dst)
This method transfers longs 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 longs remaining in this buffer.

put

public LongBuffer put(LongBuffer src)
Writes the content of the the LongBUFFER 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 longs in the source buffer.
IllegalArgumentException - If the source buffer is this buffer.
ReadOnlyBufferException - If this buffer is read-only.

put

public LongBuffer put(long[] src,
                      int offset,
                      int length)
Writes the content of the the long 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 longs 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 LongBuffer put(long[] src)
Writes the content of the the long 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 longs in the source array.
ReadOnlyBufferException - If this buffer is read-only.

hasArray

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


array

public final long[] array()
Returns the long 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.

hashCode

public int hashCode()
Calculates a hash code for this buffer. This is done with long 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.

Overrides:
hashCode in class Object
Returns:
the hash code (casted to int)
See Also:
Object.equals(Object), System.identityHashCode(Object)

equals

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

Overrides:
equals in class Object
Parameters:
obj - the Object to compare to
Returns:
whether this Object is semantically equal to another
See Also:
Object.hashCode()

compareTo

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

Specified by:
compareTo in interface Comparable<LongBuffer>
Parameters:
other - the object to be compared
Returns:
an integer describing the comparison
Throws:
ClassCastException - If obj is not an object derived from LongBuffer.

order

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


get

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

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

put

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

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

get

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

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

put

public abstract LongBuffer put(int index,
                               long 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.

compact

public abstract LongBuffer compact()
Compacts this buffer.

Throws:
ReadOnlyBufferException - If this buffer is read-only.

isDirect

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


slice

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


duplicate

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


asReadOnlyBuffer

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