The remove() method of Queue Interface returns and removes the element at the front of the container. It deletes the head of the container. The method throws an NoSuchElementException when the Queue is empty.
Syntax:
E remove()
Returns: This method returns the head of the Queue.
Exception: The function throws an NoSuchElementException when the Queue is empty.
Below programs illustrate remove() method of Queue:
Program 1: With the help of LinkedList.
// Java Program Demonstrate remove() // method of Queue import java.util.*;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of Queue
Queue<Integer> Q
= new LinkedList<Integer>();
// Add numbers to end of Queue
Q.add( 7855642 );
Q.add( 35658786 );
Q.add( 5278367 );
Q.add( 74381793 );
// print queue
System.out.println("Queue: " + Q);
// print head and deletes the head
System.out.println("Queue's head: " + Q.remove());
// print head and deleted the head
System.out.println("Queue's head: " + Q.remove());
}
} |
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Program 2: With the help of ArrayDeque.
// Java Program Demonstrate remove() // method of Queue import java.util.*;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of Queue
Queue<Integer> Q
= new ArrayDeque<Integer>();
// Add numbers to end of Queue
Q.add( 7855642 );
Q.add( 35658786 );
Q.add( 5278367 );
Q.add( 74381793 );
// print queue
System.out.println("Queue: " + Q);
// print head and deletes the head
System.out.println("Queue's head: " + Q.remove());
// print head and deleted the head
System.out.println("Queue's head: " + Q.remove());
}
} |
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Program 3: With the help of LinkedBlockingDeque.
// Java Program Demonstrate remove() // method of Queue import java.util.*;
import java.util.concurrent.LinkedBlockingDeque;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of Queue
Queue<Integer> Q
= new LinkedBlockingDeque<Integer>();
// Add numbers to end of Queue
Q.add( 7855642 );
Q.add( 35658786 );
Q.add( 5278367 );
Q.add( 74381793 );
// print queue
System.out.println("Queue: " + Q);
// print head and deletes the head
System.out.println("Queue's head: " + Q.remove());
// print head and deleted the head
System.out.println("Queue's head: " + Q.remove());
}
} |
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Program 4: With the help of ConcurrentLinkedDeque.
// Java Program Demonstrate remove() // method of Queue import java.util.*;
import java.util.concurrent.ConcurrentLinkedDeque;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of Queue
Queue<Integer> Q
= new ConcurrentLinkedDeque<Integer>();
// Add numbers to end of Queue
Q.add( 7855642 );
Q.add( 35658786 );
Q.add( 5278367 );
Q.add( 74381793 );
// print queue
System.out.println("Queue: " + Q);
// print head and deletes the head
System.out.println("Queue's head: " + Q.remove());
// print head and deleted the head
System.out.println("Queue's head: " + Q.remove());
}
} |
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Below programs illustrate exceptions thrown by this method: Program 5: To show NoSuchElementException.
// Java Program Demonstrate remove() // method of Queue import java.util.*;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of Queue
Queue<Integer> Q
= new LinkedList<Integer>();
// Add numbers to end of Queue
Q.add( 423 );
Q.add( 3432 );
// print queue
System.out.println("Queue: " + Q);
// print head and deletes the head
System.out.println("Queue's head: " + Q.remove());
// print head and deleted the head
System.out.println("Queue's head: " + Q.remove());
// print queue
System.out.println("Queue: " + Q);
try {
// Queue is empty now hence exception
System.out.println("Queue's head: " + Q.element());
}
catch (Exception e) {
System.out.println("Exception: " + e);
}
}
} |
Queue: [423, 3432] Queue's head: 423 Queue's head: 3432 Queue: [] Exception: java.util.NoSuchElementException
Reference: https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html#remove–