public class ByteArrayFIFOQueue extends AbstractBytePriorityQueue implements java.io.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 |
---|
ByteArrayFIFOQueue()
Creates a new empty queue with standard initial capacity.
|
ByteArrayFIFOQueue(int capacity)
Creates a new empty queue with given capacity.
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
Removes all elements from this queue.
|
ByteComparator |
comparator()
Returns
null (FIFO queues have no comparator). |
byte |
dequeueByte()
Dequeues the first element from the queue.
|
byte |
dequeueLastByte()
Dequeues the last element from the queue.
|
void |
enqueue(byte x)
Enqueues a new element.
|
void |
enqueueFirst(byte x)
Enqueues a new element as the first element (in dequeuing order) of the queue.
|
byte |
firstByte()
Returns the first element of the queue.
|
byte |
lastByte()
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 ByteArrayFIFOQueue(int capacity)
capacity
- the initial capacity of this queue.public ByteArrayFIFOQueue()
public ByteComparator comparator()
null
(FIFO queues have no comparator).comparator
in interface BytePriorityQueue
comparator
in interface PriorityQueue<java.lang.Byte>
null
.PriorityQueue.comparator()
public byte dequeueByte()
BytePriorityQueue
dequeueByte
in interface BytePriorityQueue
public byte dequeueLastByte()
java.util.NoSuchElementException
- if the queue is empty.public void enqueue(byte x)
BytePriorityQueue
enqueue
in interface BytePriorityQueue
x
- the element to enqueue.public void enqueueFirst(byte x)
public byte firstByte()
firstByte
in interface BytePriorityQueue
public byte lastByte()
lastByte
in interface BytePriorityQueue
lastByte
in class AbstractBytePriorityQueue
public void clear()
PriorityQueue
clear
in interface PriorityQueue<java.lang.Byte>
public void trim()
public int size()
PriorityQueue
size
in interface PriorityQueue<java.lang.Byte>