Module java.base
Package java.nio

Class LongBuffer

All Implemented Interfaces:

public abstract sealed class LongBuffer extends Buffer implements Comparable<LongBuffer>
A long buffer.

This class defines four categories of operations upon long buffers:

  • Absolute and relative get and put methods that read and write single longs;

  • Absolute and relative bulk get methods that transfer contiguous sequences of longs from this buffer into an array;

  • Absolute and relative bulk put methods that transfer contiguous sequences of longs from a long array or some other long buffer into this buffer;

  • A method for compacting a long buffer.

Long buffers can be created either by allocation, which allocates space for the buffer's content, by wrapping an existing long array into a buffer, or by creating a view of an existing byte buffer.

Like a byte buffer, a long buffer is either direct or non-direct. A long buffer created via the wrap methods of this class will be non-direct. A long buffer created as a view of a byte buffer will be direct if, and only if, the byte buffer itself is direct. Whether or not a long buffer is direct may be determined by invoking the isDirect method.

Methods in this class that do not otherwise have a value to return are specified to return the buffer upon which they are invoked. This allows method invocations to be chained.

Optional operations

Methods specified as optional operations throw a ReadOnlyBufferException when invoked on a read-only LongBuffer. The methods array and arrayOffset throw an UnsupportedOperationException if the LongBuffer is not backed by an accessible long array (irrespective of whether the LongBuffer is read-only).