Defines a collection that allows objects to be removed in some well-defined order.
The removal order can be based on insertion order (eg, a FIFO queue or a
LIFO stack), on access order (eg, an LRU cache), on some arbitrary comparator
(eg, a priority queue) or on any other well-defined ordering.
Note that the removal order is not necessarily the same as the iteration
order. A
Buffer
implementation may have equivalent removal
and iteration orders, but this is not required.
This interface does not specify any behavior for
Object.equals(Object) and Object.hashCode methods. It
is therefore possible for a
Buffer
implementation to also
also implement java.util.List, java.util.Set or
Bag.
Gets the next object from the buffer without removing it.
Gets and removes the next object from the buffer.
Buffer
implementation may have equivalent removal and iteration orders, but this is not required. This interface does not specify any behavior for Object.equals(Object) and Object.hashCode methods. It is therefore possible for aBuffer
implementation to also also implement java.util.List, java.util.Set or Bag.