public class CircularFifoQueue<E>
extends java.util.AbstractCollection<E>
implements java.util.Queue<E>, java.io.Serializable
The removal order of a CircularFifoQueue
is based on the
insertion order; elements are removed in the same order in which they
were added. The iteration order is the same as the removal order.
The add(Object)
, remove()
, peek()
, poll()
,
offer(Object)
operations all perform in constant time.
All other operations perform in linear time or worse.
This queue prevents null objects from being added.
Constructor and Description |
---|
CircularFifoQueue()
Constructor that creates a queue with the default size of 32.
|
CircularFifoQueue(java.util.Collection<? extends E> coll)
Constructor that creates a queue from the specified collection.
|
CircularFifoQueue(int size)
Constructor that creates a queue with the specified size.
|
Modifier and Type | Method and Description |
---|---|
boolean |
add(E element)
Adds the given element to this queue.
|
void |
clear()
Clears this queue.
|
E |
element() |
E |
get(int index)
Returns the element at the specified position in this queue.
|
boolean |
isEmpty()
Returns true if this queue is empty; false otherwise.
|
boolean |
isFull()
A
CircularFifoQueue can never be full, thus this returns always
false . |
java.util.Iterator<E> |
iterator()
Returns an iterator over this queue's elements.
|
int |
maxSize()
Gets the maximum size of the collection (the bound).
|
boolean |
offer(E element)
Adds the given element to this queue.
|
E |
peek() |
E |
poll() |
E |
remove() |
int |
size()
Returns the number of elements stored in the queue.
|
addAll, contains, containsAll, remove, removeAll, retainAll, toArray, toArray, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
public CircularFifoQueue()
public CircularFifoQueue(int size)
size
- the size of the queue (cannot be changed)java.lang.IllegalArgumentException
- if the size is < 1public CircularFifoQueue(java.util.Collection<? extends E> coll)
coll
- the collection to copy into the queue, may not be nulljava.lang.NullPointerException
- if the collection is nullpublic int size()
public boolean isEmpty()
public boolean isFull()
A CircularFifoQueue
can never be full, thus this returns always
false
.
false
public int maxSize()
public void clear()
public boolean add(E element)
public E get(int index)
index
- the position of the element in the queueindex
java.util.NoSuchElementException
- if the requested position is outside the range [0, size)public boolean offer(E element)
offer
in interface java.util.Queue<E>
element
- the element to addjava.lang.NullPointerException
- if the given element is nullpublic java.util.Iterator<E> iterator()