public class IntArrayFIFOQueue extends AbstractIntPriorityQueue implements Serializable
Instances of this class represent a FIFO queue using a backing array in a circular way. The array is enlarged and shrunk as needed. You can use the trim()
method to reduce its memory
usage, if necessary.
This class provides additional methods that implement a deque (double-ended queue).
Modifier and Type | Field and Description |
---|---|
static int |
INITIAL_CAPACITY
The standard initial capacity of a queue.
|
Constructor and Description |
---|
IntArrayFIFOQueue()
Creates a new empty queue with standard initial capacity.
|
IntArrayFIFOQueue(int capacity)
Creates a new empty queue with given capacity.
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
Removes all elements from this queue.
|
IntComparator |
comparator()
Returns
null (FIFO queues have no comparator). |
int |
dequeueInt()
Dequeues the first element from the queue.
|
int |
dequeueLastInt()
Dequeues the last element from the queue.
|
void |
enqueue(int x)
Enqueues a new element.
|
void |
enqueueFirst(int x)
Enqueues a new element as the first element (in dequeuing order) of the queue.
|
int |
firstInt()
Returns the first element of the queue.
|
int |
lastInt()
Returns the last element of the queue.
|
int |
size()
Returns the number of elements in this queue.
|
void |
trim()
Trims the queue to the smallest possible size.
|
dequeue, enqueue, first, last
changed, isEmpty
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
changed, isEmpty
public static final int INITIAL_CAPACITY
public IntArrayFIFOQueue(int capacity)
capacity
- the initial capacity of this queue.public IntArrayFIFOQueue()
public IntComparator comparator()
null
(FIFO queues have no comparator).comparator
in interface IntPriorityQueue
comparator
in interface PriorityQueue<Integer>
null
.PriorityQueue.comparator()
public int dequeueInt()
IntPriorityQueue
dequeueInt
in interface IntPriorityQueue
public int dequeueLastInt()
NoSuchElementException
- if the queue is empty.public void enqueue(int x)
IntPriorityQueue
enqueue
in interface IntPriorityQueue
x
- the element to enqueue.public void enqueueFirst(int x)
public int firstInt()
firstInt
in interface IntPriorityQueue
public int lastInt()
lastInt
in interface IntPriorityQueue
lastInt
in class AbstractIntPriorityQueue
public void clear()
PriorityQueue
clear
in interface PriorityQueue<Integer>
public void trim()
public int size()
PriorityQueue
size
in interface PriorityQueue<Integer>