Java.util.PriorityQueue class in Java (original) (raw)

Last Updated : 06 Dec, 2021

It is a priority queue based on priority heap.

Constructors:

Declaration :

public class PriorityQueue extends AbstractQueue implements Serializable

Methods:

  1. add(element) : java.util.PriorityQueue.add() insert the elements to the Priority Queue.
    Syntax :
    public boolean add(E e)
    Parameters :
    element : the element we need to add.
    Return :
    call return true.
    Exception :
    -&gt ClassCastException
    -&gt NullPointerException
  2. comparator() : java.util.PriorityQueue.comparator() orders the elements in the queue.
    Syntax :
    public Comparator comparator()
    Parameters :

Return :
orders the queue or return null, if it is naturally ordered
Exception :

  1. contains(Object obj) : java.util.PriorityQueue.contains(obj) returns true if the priority queue contains the element “obj”.
    Syntax :
    public boolean contains(Object obj)
    Parameters :
    obj : object to be checked
    Return :
    true - if the object is present else, return false
    Exception :
  2. iterator() : java.util.PriorityQueue.iterator() iterates over the queue element.
    Syntax :
    public Iterator iterator()
    Parameters :

Return :
calls iterator over the elements in the queue.
Exception :

  1. offer(element) : java.util.PriorityQueue.offer() is required to insert a specific element to the given priority queue.
    Syntax :
    public boolean offer(E element)
    Parameters :
    element : specific element to be entered.
    Return :
    call return true.
    Exception :
    -&gt ClassCastException
    -&gt NullPointerException
  2. peek() : java.util.PriorityQueue.peek() identifies the head element of the queue.
    Syntax :
    public E peek()
    Parameters :

Return :
calls if head exists, else null
Exception :

  1. poll() : java.util.PriorityQueue.poll() identifies the head and then removes it.
    Syntax :
    public E poll()
    Parameters :

Return :
calls if head exists, else null
Exception :

  1. remove(Object obj) : java.util.PriorityQueue.remove() removes a specific object from the queue.
    Syntax :
    public boolean remove(Object obj)
    Parameters :
    obj : object to be removed
    Return :
    true - if obj is removed
    Exception :

  1. size() : java.util.PriorityQueue.size() returns the size of elements in the Priority Queue.
    Syntax :
    public int size()
    Parameters :

Return :
no. of elements
Exception :

  1. toArray() : java.util.PriorityQueue.toArray() returns an array containing the elements of PriorityQueue.
    Syntax :
    public Object[] toArray()
    Parameters :

Return :
returns an array containing all the elements of PriorityQueue.
Exception :

  1. toArray(T[] array) : java.util.PriorityQueue.toArray(T[] a) returns the array having the elements of the Priority Queue.
    Syntax :
    public T[] toArray(T[] array)
    Parameters :
    array : the array to which are to be sorted.
    Return :
    call an array containing all the elements of the array.
    Exception :
    -> ArrayStoreException
    -> NullPointerException
  2. clear() : java.util.PriorityQueue.clear() clears all the elements of the PriorityQueue.
    Syntax :
    public void clear()
    Parameters :

Return :

Exception :

import java.util.*;

public class NewClass

{

`` public static void main(String[] args)

`` {

`` PriorityQueue <Integer> geek = new PriorityQueue <Integer> ();

`` for ( int i= 2 ; i<= 20 ; i=i+ 2 )

`` {

`` geek.add( new Integer (i));

`` }

`` System.out.println( "geek PriorityQueue : " + geek);

`` Comparator geek_comp = geek.comparator();

`` System.out.println( "geek PriorityQueue : " + geek_comp);

`` boolean check = geek.contains( 6 );

`` System.out.println( "Use of contains() : " + check);

`` Iterator g_iterator = geek.iterator();

`` System.out.print( "Iterator values : " );

`` while (g_iterator.hasNext())

`` {

`` System.out.print(g_iterator.next() + " " );

`` }

`` System.out.println( "" );

`` geek.offer( 3050 );

`` System.out.println( "geek PriorityQueue : " + geek);

`` System.out.println( "Head of PriorityQueue via peek : " + geek.peek());

`` int h = geek.poll();

`` System.out.println( "\nHead of PriorityQueue via poll : " + h);

`` System.out.println( "geek PriorityQueue bcz of poll() : " + geek);

`` boolean r = geek.remove( 8 );

`` System.out.println( "\nCan remove : " + r);

`` System.out.println( "geek PriorityQueue bcz of remove() : " + geek);

`` System.out.println( "\nSize of PriorityQueue : " + geek.size());

`` Object[] g = geek.toArray();

`` System.out.print ( "Array from PriorityQueue : " );

`` for ( int i = 0 ; i<g.length; i++ )

`` {

`` System.out.print (g[i].toString() + " " ) ;

`` }

`` System.out.println( "\n" );

`` Integer[] g2 = new Integer[ 5 ];

`` Integer[] g1 = geek.toArray(g2);

`` System.out.print ( "Array from PriorityQueue of size 5 : " );

`` for ( int i = 0 ; i<g1.length; i++ )

`` {

`` System.out.print (g1[i].toString() + " " ) ;

`` }

`` System.out.println( "\n" );

`` geek.clear();

`` System.out.println( "PriorityQueue after clear() : " + geek);

`` }

}

Output :

geek PriorityQueue : [2, 4, 6, 8, 10, 12, 14, 16, 18, 20] geek PriorityQueue : null Use of contains() : true Iterator values : 2 4 6 8 10 12 14 16 18 20 geek PriorityQueue : [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 3050] Head of PriorityQueue via peek : 2

Head of PriorityQueue via poll : 2 geek PriorityQueue bcz of poll() : [4, 8, 6, 16, 10, 12, 14, 3050, 18, 20]

Can remove : true geek PriorityQueue bcz of remove() : [4, 10, 6, 16, 20, 12, 14, 3050, 18]

Size of PriorityQueue : 9 Array from PriorityQueue : 4 10 6 16 20 12 14 3050 18

Array from PriorityQueue of size 5 : 4 10 6 16 20 12 14 3050 18

PriorityQueue after clear() : []

Similar Reads