diff --git a/java-queue-example b/java-queue-example new file mode 100644 index 0000000..7a2bc74 --- /dev/null +++ b/java-queue-example @@ -0,0 +1,112 @@ +import java.util.Iterator; +import java.util.LinkedList; +import java.util.Queue; + +public class IterateOverQueueExample { + public static void main(String[] args) { + Queue<String> waitingQueue = new LinkedList<>(); + + waitingQueue.add("John"); + waitingQueue.add("Brad"); + waitingQueue.add("Angelina"); + waitingQueue.add("Julia"); + + System.out.println("=== Iterating over a Queue using Java 8 forEach() ==="); + waitingQueue.forEach(name -> { + System.out.println(name); + }); + + System.out.println("\n=== Iterating over a Queue using iterator() ==="); + Iterator<String> waitingQueueIterator = waitingQueue.iterator(); + while (waitingQueueIterator.hasNext()) { + String name = waitingQueueIterator.next(); + System.out.println(name); + } + + System.out.println("\n=== Iterating over a Queue using iterator() and Java 8 forEachRemaining() ==="); + waitingQueueIterator = waitingQueue.iterator(); + waitingQueueIterator.forEachRemaining(name -> { + System.out.println(name); + }); + + System.out.println("\n=== Iterating over a Queue using simple for-each loop ==="); + for(String name: waitingQueue) { + System.out.println(name); + } + } +} + +************************************************************************************************************************************************************************ + +import java.util.LinkedList; +import java.util.Queue; + +public class QueueExample { + public static void main(String[] args) { + // Create and initialize a Queue using a LinkedList + Queue<String> waitingQueue = new LinkedList<>(); + + // Adding new elements to the Queue (The Enqueue operation) + waitingQueue.add("Rajeev"); + waitingQueue.add("Chris"); + waitingQueue.add("John"); + waitingQueue.add("Mark"); + waitingQueue.add("Steven"); + + System.out.println("WaitingQueue : " + waitingQueue); + + // Removing an element from the Queue using remove() (The Dequeue operation) + // The remove() method throws NoSuchElementException if the Queue is empty + String name = waitingQueue.remove(); + System.out.println("Removed from WaitingQueue : " + name + " | New WaitingQueue : " + waitingQueue); + + // Removing an element from the Queue using poll() + // The poll() method is similar to remove() except that it returns null if the Queue is empty. + name = waitingQueue.poll(); + System.out.println("Removed from WaitingQueue : " + name + " | New WaitingQueue : " + waitingQueue); + } +} + +*********************************************************************************************************************************************************************** + +import java.util.LinkedList; +import java.util.Queue; + +public class QueueSizeSearchFrontExample { + public static void main(String[] args) { + Queue<String> waitingQueue = new LinkedList<>(); + + waitingQueue.add("Jennifer"); + waitingQueue.add("Angelina"); + waitingQueue.add("Johnny"); + waitingQueue.add("Sachin"); + + System.out.println("WaitingQueue : " + waitingQueue); + + // Check is a Queue is empty + System.out.println("is waitingQueue empty? : " + waitingQueue.isEmpty()); + + // Find the size of the Queue + System.out.println("Size of waitingQueue : " + waitingQueue.size()); + + // Check if the Queue contains an element + String name = "Johnny"; + if(waitingQueue.contains(name)) { + System.out.println("WaitingQueue contains " + name); + } else { + System.out.println("Waiting Queue doesn't contain " + name); + } + + // Get the element at the front of the Queue without removing it using element() + // The element() method throws NoSuchElementException if the Queue is empty + String firstPersonInTheWaitingQueue = waitingQueue.element(); + System.out.println("First Person in the Waiting Queue (element()) : " + firstPersonInTheWaitingQueue); + + // Get the element at the front of the Queue without removing it using peek() + // The peek() method is similar to element() except that it returns null if the Queue is empty + firstPersonInTheWaitingQueue = waitingQueue.peek(); + System.out.println("First Person in the Waiting Queue : " + firstPersonInTheWaitingQueue); + + } +} +