java.nio
Class FloatBuffer

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

public abstract class FloatBuffer
extends Buffer
implements Comparable<FloatBuffer>

Since:
1.4

Method Summary
static FloatBuffer allocate(int capacity)
          Allocates a new FloatBuffer object with a given capacity.
 float[] array()
          Returns the float array that backs this buffer.
 int arrayOffset()
          Returns the offset within this buffer's backing array of the first element.
abstract  FloatBuffer asReadOnlyBuffer()
          Creates a new read-only FloatBuffer that shares this buffer's content.
abstract  FloatBuffer compact()
          Compacts this buffer.
 int compareTo(FloatBuffer other)
          Compares two FloatBuffer objects.
abstract  FloatBuffer duplicate()
          Creates a new FloatBuffer that shares this buffer's content.
 boolean equals(Object obj)
          Checks if this buffer is equal to obj.
abstract  float get()
          Reads the float at this buffer's current position, and then increments the position.
 FloatBuffer get(float[] dst)
          This method transfers floats from this buffer into the given destination array.
 FloatBuffer get(float[] dst, int offset, int length)
          This method transfers floats from this buffer into the given destination array.
abstract  float get(int index)
          Absolute get method.
 boolean hasArray()
          Tells whether ot not this buffer is backed by an accessible float 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  FloatBuffer put(float b)
          Writes the float at this buffer's current position, and then increments the position.
 FloatBuffer put(float[] src)
          Writes the content of the the float array src into the buffer.
 FloatBuffer put(float[] src, int offset, int length)
          Writes the content of the the float array src into the buffer.
 FloatBuffer put(FloatBuffer src)
          Writes the content of the the FloatBUFFER src into the buffer.
abstract  FloatBuffer put(int index, float b)
          Absolute put method.
abstract  FloatBuffer slice()
          Creates a new FloatBuffer whose content is a shared subsequence of this buffer's content.
static FloatBuffer wrap(float[] array)
          Wraps a float array into a FloatBuffer object.
static FloatBuffer wrap(float[] array, int offset, int length)
          Wraps a float array into a FloatBuffer 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 FloatBuffer allocate(int capacity)
Allocates a new FloatBuffer object with a given capacity.


wrap

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

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

wrap

public static final FloatBuffer wrap(float[] array)
Wraps a float array into a FloatBuffer object.


get

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

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

get

public FloatBuffer get(float[] dst)
This method transfers floats 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 floats remaining in this buffer.

put

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

put

public FloatBuffer put(float[] src,
                       int offset,
                       int length)
Writes the content of the the float 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 floats 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 FloatBuffer put(float[] src)
Writes the content of the the float 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 floats 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 float array.


array

public final float[] array()
Returns the float 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 int 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, in Float.floatToIntBits() form 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
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(FloatBuffer other)
Compares two FloatBuffer objects.

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

order

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


get

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

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

put

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

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

get

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

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

put

public abstract FloatBuffer put(int index,
                                float 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 FloatBuffer 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 FloatBuffer slice()
Creates a new FloatBuffer whose content is a shared subsequence of this buffer's content.


duplicate

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


asReadOnlyBuffer

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