Java Reference
In-Depth Information
Deque: [John, Richard, Donna, Ken]
Head Element: John
Removed one element from Deque
Deque: [Richard, Donna, Ken]
Head Element: Richard
Removed one element from Deque
Deque: [Donna, Ken]
Head Element: Donna
Removed one element from Deque
Deque: [Ken]
Head Element: Ken
Removed one element from Deque
Deque: []
deque.isEmpty(): true
deque.peekFirst(): null
deque.pollFirst(): null
deque.getFirst(): Deque is empty.
deque.removeFirst(): Deque is empty.
Listing 12-20 demonstrates how to use a Deque as a stack (or LIFO queue).
Listing 12-20. Using a Deque as a Stack
// DequeAsStack.java
package com.jdojo.collections;
import java.util.ArrayDeque;
import java.util.Deque;
public class DequeAsStack {
public static void main(String[] args) {
// Create a Deque and use it as stack
Deque<String> deque = new ArrayDeque<>();
deque.push("John");
deque.push("Richard");
deque.push("Donna");
deque.push("Ken");
System.out.println("Stack: " + deque);
// Let's remove all elements from the Deque
while (deque.peek() != null) {
System.out.println("Element at top: " + deque.peek());
System.out.println("Popped: " + deque.pop());
System.out.println("Stack: " + deque);
}
System.out.println("Stack is empty: " + deque.isEmpty());
}
}
 
Search WWH ::




Custom Search