Interface Queue<E>
- All Superinterfaces:
Collection<E>, Iterable<E>
- All Known Subinterfaces:
Deque<E>
- All Known Implementing Classes:
AbstractQueue, ArrayDeque, LinkedList, PriorityQueue
This kind of collection provides advanced operations compared to basic
collections, such as insertion, extraction, and inspection.
Generally, a queue orders its elements by means of first-in-first-out. However, a priority queue orders its elements according to a comparator specified or the elements' natural order. Furthermore, a stack orders its elements last-in-first out.
A typical queue does not allow null to be inserted as its element,
while some implementations such as LinkedList allow it. But
null should not be inserted even in these implementations, since the method
poll returns null to indicate that there is no element left
in the queue.
Queue does not provide blocking queue methods, which would block
until the operation of the method is allowed. See the
BlockingQueue interface for information about
blocking queue methods.
-
Method Summary
Modifier and TypeMethodDescriptionelement()Gets but does not remove the element at the head of the queue.booleanInserts the specified element into the queue provided that the condition allows such an operation.peek()Gets but does not remove the element at the head of the queue.poll()Gets and removes the element at the head of the queue, or returnsnullif there is no element in the queue.remove()Gets and removes the element at the head of the queue.Methods inherited from interface Collection
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArrayModifier and TypeMethodDescriptionbooleanAttempts to addobjectto the contents of thisCollection(optional).booleanaddAll(Collection<? extends E> collection) Attempts to add all of the objects contained inCollectionto the contents of thisCollection(optional).voidclear()Removes all elements from thisCollection, leaving it empty (optional).booleanTests whether thisCollectioncontains the specified object.booleancontainsAll(Collection<?> collection) Tests whether thisCollectioncontains all objects contained in the specifiedCollection.booleanCompares the argument to the receiver, and returns true if they represent the same object using a class specific comparison.inthashCode()Returns an integer hash code for the receiver.booleanisEmpty()Returns if thisCollectioncontains no elements.iterator()Returns an instance ofIteratorthat may be used to access the objects contained by thisCollection.booleanRemoves one instance of the specified object from thisCollectionif one is contained (optional).booleanremoveAll(Collection<?> collection) Removes all occurrences in thisCollectionof each object in the specifiedCollection(optional).booleanretainAll(Collection<?> collection) Removes all objects from thisCollectionthat are not also found in theCollectionpassed (optional).intsize()Returns a count of how many objects thisCollectioncontains.Object[]toArray()Returns a new array containing all elements contained in thisCollection.<T> T[]toArray(T[] array) Returns an array containing all elements contained in thisCollection.
-
Method Details
-
offer
Inserts the specified element into the queue provided that the condition allows such an operation. The method is generally preferable toCollection.add(E), since the latter might throw an exception if the operation fails.- Parameters:
o- the specified element to insert into the queue.- Returns:
trueif the operation succeeds andfalseif it fails.
-
poll
E poll()Gets and removes the element at the head of the queue, or returnsnullif there is no element in the queue.- Returns:
- the element at the head of the queue or
nullif there is no element in the queue.
-
remove
E remove()Gets and removes the element at the head of the queue. Throws a NoSuchElementException if there is no element in the queue.- Returns:
- the element at the head of the queue.
- Throws:
NoSuchElementException- if there is no element in the queue.
-
peek
E peek()Gets but does not remove the element at the head of the queue.- Returns:
- the element at the head of the queue or
nullif there is no element in the queue.
-
element
E element()Gets but does not remove the element at the head of the queue. Throws aNoSuchElementExceptionif there is no element in the queue.- Returns:
- the element at the head of the queue.
- Throws:
NoSuchElementException- if there is no element in the queue.
-