Open In App

PriorityQueue spliterator() method in Java

Improve
Improve
Like Article
Like
Save
Share
Report

The spliterator() method of PriorityQueue returns a Spliterator the same elements as PriorityQueue.The returned Spliterator is late-binding and fail-fast Spliterator. A late-binding Spliterator binds to the source of elements means PriorityQueue at the point of first traversal, first split, or first query for estimated size, rather than at the time the Spliterator is created. It can be used with Streams in Java 8. Also it can traverse elements individually and in bulk too. Spliterator is better way to traverse over element because it provides more control on elements.

Syntax:

public Spliterator<E> spliterator()

Returns: This method returns a Spliterator over the elements in PriorityQueue.

Below programs illustrate spliterator() method of PriorityQueue:

Example 1: To demonstrate spliterator() method on PriorityQueue.




// Java Program Demonstrate spliterator()
// method of PriorityQueue
  
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create an PriorityQueue
        PriorityQueue<String> queue = new PriorityQueue<String>();
  
        // Add String to queue
        queue.add("Kolkata");
        queue.add("Patna");
        queue.add("Delhi");
        queue.add("Jammu");
  
        // using spliterator() method
        Spliterator<String> spt = queue.spliterator();
  
        // print result from Spliterator
        System.out.println("list of Strings:");
  
        // forEachRemaining method of Spliterator
        spt.forEachRemaining((n) -> System.out.println(n));
    }
}


Output:

list of Strings:
Delhi
Jammu
Kolkata
Patna

Example 2: To demonstrate spliterator() method on PriorityQueue which contains set of Students Names.




// Java Program Demonstrate spliterator()
// method of PriorityQueue
  
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create an PriorityQueue which going to
        // contain list of names
        PriorityQueue<String> queue = new PriorityQueue<String>();
  
        // Add String object to queue
        queue.add("Aman");
        queue.add("Amar");
        queue.add("Sanjeet");
        queue.add("Josh");
        queue.add("Ron");
        queue.add("Kevin");
  
        // using spliterator() method
        Spliterator<String> spt = queue.spliterator();
  
        // print result from Spliterator
        System.out.println("list of String Object:");
  
        // forEachRemaining method of Spliterator
        spt.forEachRemaining((n) -> print(n));
    }
  
    public static void print(String s)
    {
        System.out.println("Student Name: " + s);
    }
}


Output:

list of String Object:
Student Name: Aman
Student Name: Amar
Student Name: Kevin
Student Name: Josh
Student Name: Ron
Student Name: Sanjeet

Reference: https://docs.oracle.com/javase/8/docs/api/java/util/PriorityQueue.html#spliterator–



Last Updated : 10 Dec, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads