Mega Code Archive

 
Categories / Java Tutorial / Collections
 

The Collections Framework New Types

New types in Collections Framework Deque BlockingDeque NavigableMap NavigableSet The Deque Interface Deque [pronounced "deck"] is short for double-ended queue. java.util.Deque is a subinterface of Queue. A deque is a queue that supports element insertion and removal at both ends. You can also restrict the maximum number of elements in a Deque. Deque can also be used as a stack. Methods are available for adding, removing, and inspecting elements. The ArrayDeque class is an implementation of Deque that does not impose capacity restriction. ArrayDeque always grows as necessary to support new elements. Using Deque as a stack import java.util.ArrayDeque; import java.util.Deque; public class IntegerStack {   private Deque<Integer> data = new ArrayDeque<Integer>();   public void push(Integer element) {     data.addFirst(element);   }   public Integer pop() {     return data.removeFirst();   }   public Integer peek() {     return data.peekFirst();   }   public String toString() {     return data.toString();   }   public static void main(String[] args) {     IntegerStack stack = new IntegerStack();     for (int i = 0; i < 5; i++) {       stack.push(i);     }     System.out.println("After pushing 5 elements: " + stack);     int m = stack.pop();     System.out.println("Popped element = " + m);     System.out.println("After popping 1 element : " + stack);     int n = stack.peek();     System.out.println("Peeked element = " + n);     System.out.println("After peeking 1 element : " + stack);   } } After pushing 5 elements: [4, 3, 2, 1, 0] Popped element = 4 After popping 1 element : [3, 2, 1, 0] Peeked element = 3 After peeking 1 element : [3, 2, 1, 0]