* Comparison of Queue and Deque methods
*
- * {@code Queue} Method |
- * Equivalent {@code Deque} Method |
+ * {@code Queue} Method |
+ * Equivalent {@code Deque} Method |
*
*
- * {@link java.util.Queue#add add(e)} |
- * {@link #addLast addLast(e)} |
+ * {@link #add(Object) add(e)} |
+ * {@link #addLast(Object) addLast(e)} |
*
*
- * {@link java.util.Queue#offer offer(e)} |
- * {@link #offerLast offerLast(e)} |
+ * {@link #offer(Object) offer(e)} |
+ * {@link #offerLast(Object) offerLast(e)} |
*
*
- * {@link java.util.Queue#remove remove()} |
- * {@link #removeFirst removeFirst()} |
+ * {@link #remove() remove()} |
+ * {@link #removeFirst() removeFirst()} |
*
*
- * {@link java.util.Queue#poll poll()} |
- * {@link #pollFirst pollFirst()} |
+ * {@link #poll() poll()} |
+ * {@link #pollFirst() pollFirst()} |
*
*
- * {@link java.util.Queue#element element()} |
- * {@link #getFirst getFirst()} |
+ * {@link #element() element()} |
+ * {@link #getFirst() getFirst()} |
*
*
- * {@link java.util.Queue#peek peek()} |
- * {@link #peek peekFirst()} |
+ * {@link #peek() peek()} |
+ * {@link #peekFirst() peekFirst()} |
*
*
*
@@ -110,24 +108,23 @@ package java.util;
* beginning of the deque. Stack methods are precisely equivalent to
* {@code Deque} methods as indicated in the table below:
*
- *
+ *
* Comparison of Stack and Deque methods
*
- * Stack Method |
- * Equivalent {@code Deque} Method |
+ * Stack Method |
+ * Equivalent {@code Deque} Method |
*
*
- * {@link #push push(e)} |
- * {@link #addFirst addFirst(e)} |
+ * {@link #push(Object) push(e)} |
+ * {@link #addFirst(Object) addFirst(e)} |
*
*
- * {@link #pop pop()} |
- * {@link #removeFirst removeFirst()} |
+ * {@link #pop() pop()} |
+ * {@link #removeFirst() removeFirst()} |
*
*
- * {@link #peek peek()} |
- * {@link #peekFirst peekFirst()} |
+ * {@link #peek() peek()} |
+ * {@link #peekFirst() peekFirst()} |
*
*
*
@@ -148,21 +145,21 @@ package java.util;
* that do allow null elements are strongly encouraged not to
* take advantage of the ability to insert nulls. This is so because
* {@code null} is used as a special return value by various methods
- * to indicated that the deque is empty.
+ * to indicate that the deque is empty.
*
* {@code Deque} implementations generally do not define
* element-based versions of the {@code equals} and {@code hashCode}
* methods, but instead inherit the identity-based versions from class
* {@code Object}.
*
- *
This interface is a member of the Java Collections
- * Framework.
+ *
This interface is a member of the
+ *
+ * Java Collections Framework.
*
* @author Doug Lea
* @author Josh Bloch
* @since 1.6
- * @param the type of elements held in this collection
+ * @param the type of elements held in this deque
*/
public interface Deque extends Queue {
/**
@@ -318,17 +315,18 @@ public interface Deque extends Queue<
* Removes the first occurrence of the specified element from this deque.
* If the deque does not contain the element, it is unchanged.
* More formally, removes the first element {@code e} such that
- * (o==null ? e==null : o.equals(e))
- * (if such an element exists).
+ * {@code Objects.equals(o, e)} (if such an element exists).
* Returns {@code true} if this deque contained the specified element
* (or equivalently, if this deque changed as a result of the call).
*
* @param o element to be removed from this deque, if present
* @return {@code true} if an element was removed as a result of this call
* @throws ClassCastException if the class of the specified element
- * is incompatible with this deque (optional)
+ * is incompatible with this deque
+ * (optional)
* @throws NullPointerException if the specified element is null and this
- * deque does not permit null elements (optional)
+ * deque does not permit null elements
+ * (optional)
*/
boolean removeFirstOccurrence(Object o);
@@ -336,17 +334,18 @@ public interface Deque extends Queue<
* Removes the last occurrence of the specified element from this deque.
* If the deque does not contain the element, it is unchanged.
* More formally, removes the last element {@code e} such that
- * (o==null ? e==null : o.equals(e))
- * (if such an element exists).
+ * {@code Objects.equals(o, e)} (if such an element exists).
* Returns {@code true} if this deque contained the specified element
* (or equivalently, if this deque changed as a result of the call).
*
* @param o element to be removed from this deque, if present
* @return {@code true} if an element was removed as a result of this call
* @throws ClassCastException if the class of the specified element
- * is incompatible with this deque (optional)
+ * is incompatible with this deque
+ * (optional)
* @throws NullPointerException if the specified element is null and this
- * deque does not permit null elements (optional)
+ * deque does not permit null elements
+ * (optional)
*/
boolean removeLastOccurrence(Object o);
@@ -402,8 +401,8 @@ public interface Deque extends Queue<
/**
* Retrieves and removes the head of the queue represented by this deque
* (in other words, the first element of this deque).
- * This method differs from {@link #poll poll} only in that it throws an
- * exception if this deque is empty.
+ * This method differs from {@link #poll() poll()} only in that it
+ * throws an exception if this deque is empty.
*
* This method is equivalent to {@link #removeFirst()}.
*
@@ -491,8 +490,7 @@ public interface Deque extends Queue<
* Removes the first occurrence of the specified element from this deque.
* If the deque does not contain the element, it is unchanged.
* More formally, removes the first element {@code e} such that
- * (o==null ? e==null : o.equals(e))
- * (if such an element exists).
+ * {@code Objects.equals(o, e)} (if such an element exists).
* Returns {@code true} if this deque contained the specified element
* (or equivalently, if this deque changed as a result of the call).
*
@@ -501,24 +499,27 @@ public interface Deque extends Queue<
* @param o element to be removed from this deque, if present
* @return {@code true} if an element was removed as a result of this call
* @throws ClassCastException if the class of the specified element
- * is incompatible with this deque (optional)
+ * is incompatible with this deque
+ * (optional)
* @throws NullPointerException if the specified element is null and this
- * deque does not permit null elements (optional)
+ * deque does not permit null elements
+ * (optional)
*/
boolean remove(Object o);
/**
* Returns {@code true} if this deque contains the specified element.
* More formally, returns {@code true} if and only if this deque contains
- * at least one element {@code e} such that
- * (o==null ? e==null : o.equals(e)).
+ * at least one element {@code e} such that {@code Objects.equals(o, e)}.
*
* @param o element whose presence in this deque is to be tested
* @return {@code true} if this deque contains the specified element
- * @throws ClassCastException if the type of the specified element
- * is incompatible with this deque (optional)
+ * @throws ClassCastException if the class of the specified element
+ * is incompatible with this deque
+ * (optional)
* @throws NullPointerException if the specified element is null and this
- * deque does not permit null elements (optional)
+ * deque does not permit null elements
+ * (optional)
*/
boolean contains(Object o);
@@ -527,7 +528,7 @@ public interface Deque extends Queue<
*
* @return the number of elements in this deque
*/
- public int size();
+ int size();
/**
* Returns an iterator over the elements in this deque in proper sequence.