In this chapter you will learn:
- What is ArrayDeque?
- Declaration of ArrayDeque
- Programming Example
What is ArrayDeque in Java?
ArrayDeque is a resizable array implementation in Deque. Some fact about ArrayDeque are as follow:
- It is a resizable array implementation in Deque.
- It has no capacity restriction so it grows as necessary.
- It is not thread safe
- It doesn’t allow null element
- It is faster than stack when used as stack and faster than linked list when used as linked list.
Constructors
Constructors | Descriptions |
ArrayDeque() |
Constructs an empty array deque with an initial capacity sufficient to hold 16 elements. |
ArrayDeque(Collection<? extends E> c) |
Constructs a deque containing the elements of the specified collection, in the order they are returned by the collection’s iterator. |
ArrayDeque(int numElements) |
Constructs an empty array deque with an initial capacity sufficient to hold the specified number of elements. |
Methods
Methods | Descriptions |
boolean add(E e) |
Inserts the specified element at the end of this deque. |
void addFirst(E e) |
Inserts the specified element at the front of this deque. |
void addLast(E e) |
Inserts the specified element at the end of this deque. |
void clear() |
Removes all of the elements from this deque. |
ArrayDeque<E> clone() |
Returns a copy of this deque. |
boolean contains(Object o) |
Returns true if this deque contains the specified element. |
Iterator<E> descendingIterator() |
Returns an iterator over the elements in this deque in reverse sequential order. |
E element() |
Retrieves, but does not remove, the head of the queue represented by this deque. |
E getFirst() |
Retrieves, but does not remove, the first element of this deque. |
E getLast() |
Retrieves, but does not remove, the last element of this deque. |
boolean isEmpty() |
Returns true if this deque contains no elements. |
Iterator<E> iterator() |
Returns an iterator over the elements in this deque. |
boolean offer(E e) |
Inserts the specified element at the end of this deque. |
boolean offerFirst(E e) |
Inserts the specified element at the front of this deque. |
boolean offerLast(E e) |
Inserts the specified element at the end of this deque. |
E peek() |
Retrieves, but does not remove, the head of the queue represented by this deque, or returns null if this deque is empty. |
E peekFirst() |
Retrieves, but does not remove, the first element of this deque, or returns null if this deque is empty. |
E peekLast() |
Retrieves, but does not remove, the last element of this deque, or returns null if this deque is empty. |
E poll() |
Retrieves and removes the head of the queue represented by this deque (in other words, the first element of this deque), or returns null if this deque is empty. |
E pollFirst() |
Retrieves and removes the first element of this deque, or returns null if this deque is empty. |
E pollLast() |
Retrieves and removes the last element of this deque, or returns null if this deque is empty. |
E pop() |
Pops an element from the stack represented by this deque. |
void push(E e) |
Pushes an element onto the stack represented by this deque. |
E remove() |
Retrieves and removes the head of the queue represented by this deque. |
boolean remove(Object o) |
Removes a single instance of the specified element from this deque. |
E removeFirst() |
Retrieves and removes the first element of this deque. |
boolean removeFirstOccurrence(Object o) |
Removes the first occurrence of the specified element in this deque (when traversing the deque from head to tail). |
E removeLast() |
Retrieves and removes the last element of this deque. |
boolean removeLastOccurrence(Object o) |
Removes the last occurrence of the specified element in this deque (when traversing the deque from head to tail). |
int size() |
Returns the number of elements in this deque. |
Object[] toArray() |
Returns an array containing all of the elements in this deque in proper sequence (from first to last element). |
<T> T[] toArray(T[] a) |
Returns an array containing all of the elements in this deque in proper sequence (from first to last element); the runtime type of the returned array is that of the specified array. |
Methods Inherited From Class
Class | Methods |
java.util.AbstractCollection |
addAll(), containsAll(), removeAll(), retainAll(), toString() |
java.lang.Object |
equals(), finalize(), getClass(), hashCode(), notify(), notifyAll(), wait(), wait(), wait() |
java.util.Collection |
addAll(), containsAll(), equals(), hashCode(), removeAll(), retainAll() |
Declaration:
ArrayDequeaq=new ArrayDeque ();
Programming Example
import java.util.*; class ArrayDeque_Example { public static void main(String[] args) { ArrayDequeaq=new ArrayDeque (); aq.push("C#"); aq.push("Java"); aq.push("HTML"); aq.push("ASP.Net"); //Printing ArrayDeque Iterator itr=aq.iterator(); while(itr.hasNext()) { System.out.print(itr.next()+ " "); } //Removing one Item System.out.println("\nItem Removed : " + aq.pop()); //Printing ArrayDeque Again System.out.println(aq); //Adding Element at First Position aq.addFirst("PHP"); //Adding Element at Last Position aq.addLast("JavaScript"); //Printing ArrayDeque System.out.println(aq); //Finding Element if(aq.contains("Java")) { System.out.println("Java is found in this list"); } } }
Output
D:\JavaProgram>javac ArrayDeque_Example.java
D:\JavaProgram>java ArrayDeque_ExampleASP.Net HTML Java C#
Item Removed : ASP.Net
[HTML, Java, C#]
[PHP, HTML, Java, C#, JavaScript]
Java is found in this list
_
D:\JavaProgram>java ArrayDeque_ExampleASP.Net HTML Java C#
Item Removed : ASP.Net
[HTML, Java, C#]
[PHP, HTML, Java, C#, JavaScript]
Java is found in this list
_
Summary
In this chapter you have learned ArrayDeque in Java. It is very easy to learn collection using complete programming example. In the next chapter you will learn Set Interface in Java.