Java PriorityQueue clear() Method



Description

The Java PriorityQueue clear() method removes all of the elements from this queue. This method is very useful when we want to reuse a queue or reset the queue.

Declaration

Following is the declaration for java.util.PriorityQueue.clear() method

public void clear()

Parameters

NA

Return Value

This method does not return any value.

Exception

NA

Clearing a PriorityQueue of Ints Example

The following example shows the usage of Java PriorityQueue clear() method. In this example, we're using Integers. As first step, we're populating the arraydeque object and printing it. Then we're print the size of the arraydeque object and perform clear operation. After clearing, we're printing the size of the arraydeque object which is 0 now.

package com.tutorialspoint;

import java.util.PriorityQueue;

public class PriorityQueueDemo {
   public static void main(String[] args) {
     
      // create an empty priority queue
      PriorityQueue<Integer> queue = new PriorityQueue<>();

      // use add() method to add elements in the queue
      queue.add(20);
      queue.add(30);
      queue.add(10);

      // let us print all the elements available in queue
      System.out.println("PriorityQueue = " + queue);    

      // finding size of this queue
      int retval = queue.size();
      System.out.println("PriorityQueue consists of "+ retval +" elements");

      System.out.println("Performing clear operation !!");
      queue.clear();
      retval = queue.size();
      System.out.println("Now, queue consists of "+ retval +" elements");
   }
}   

Output

Let us compile and run the above program, this will produce the following result −

PriorityQueue = [10, 30, 20]
PriorityQueue consists of 3 elements
Performing clear operation !!
Now, queue consists of 0 elements

Clearing a PriorityQueue of Strings Example

The following example shows the usage of Java PriorityQueue clear() method. In this example, we're using Strings. As first step, we're populating the arraydeque object and printing it. Then we're print the size of the arraydeque object and perform clear operation. After clearing, we're printing the size of the arraydeque object which is 0 now.

package com.tutorialspoint;

import java.util.PriorityQueue;

public class PriorityQueueDemo {
   public static void main(String[] args) {
     
      // create an empty priority queue
      PriorityQueue<String> queue = new PriorityQueue<>();

      // use add() method to add elements in the queue
      queue.add("A");
      queue.add("B");
      queue.add("C");

      // let us print all the elements available in queue
      System.out.println("PriorityQueue = " + queue);    

      // finding size of this queue
      int retval = queue.size();
      System.out.println("PriorityQueue consists of "+ retval +" elements");

      System.out.println("Performing clear operation !!");
      queue.clear();
      retval = queue.size();
      System.out.println("Now, queue consists of "+ retval +" elements");
   }
}   

Output

Let us compile and run the above program, this will produce the following result −

PriorityQueue = [A, B, C]
PriorityQueue consists of 3 elements
Performing clear operation !!
Now, queue consists of 0 elements

Clearing a PriorityQueue of Objects Example

The following example shows the usage of Java PriorityQueue clear() method. In this example, we're using Student objects. As first step, we're populating the arraydeque object and printing it. Then we're print the size of the arraydeque object and perform clear operation. After clearing, we're printing the size of the arraydeque object which is 0 now.

package com.tutorialspoint;

import java.util.PriorityQueue;

public class PriorityQueueDemo {
   public static void main(String[] args) {
     
      // create an empty priority queue
      PriorityQueue<Student> queue = new PriorityQueue<>();

      // use add() method to add elements in the queue
      queue.add(new Student(1, "Julie"));
      queue.add(new Student(2, "Robert"));
      queue.add(new Student(3, "Adam"));

      // let us print all the elements available in queue
      System.out.println("PriorityQueue = " + queue);    

      // finding size of this queue
      int retval = queue.size();
      System.out.println("PriorityQueue consists of "+ retval +" elements");

      System.out.println("Performing clear operation !!");
      queue.clear();
      retval = queue.size();
      System.out.println("Now, queue consists of "+ retval +" elements");
   }
} 

class Student implements Comparable<Student> {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
   
   @Override
   public boolean equals(Object obj) {
      Student s = (Student)obj;
      return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
   }

   @Override
   public int compareTo(Student student) {
      return this.rollNo - student.rollNo;
   }
}  

Output

Let us compile and run the above program, this will produce the following result −

PriorityQueue = [[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]]
PriorityQueue consists of 3 elements
Performing clear operation !!
Now, queue consists of 0 elements
java_util_priorityqueue.htm
Advertisements