El método comparador() de PriorityBlockingQueue devuelve el comparador que se puede usar para ordenar los elementos en PriorityBlockingQueue. El método devuelve un valor nulo si la cola sigue el patrón de ordenación natural de los elementos.
Sintaxis:
public Comparator<? super E> comparator()
Devoluciones: este método devuelve el conjunto comparador utilizado para ordenar los elementos del conjunto en un orden específico. Devuelve un valor nulo si PriorityBlockingQueue sigue el patrón de orden natural o predeterminado.
Los siguientes programas ilustran el método comparador() de PriorityBlockingQueue:
Ejemplo 1: Para demostrar el método comparador() en PriorityBlockingQueue que contiene una lista de enteros.
// Java Program Demonstrate comparator() // method of PriorityBlockingQueue import java.util.concurrent.PriorityBlockingQueue; import java.util.*; public class GFG { public static void main(String[] args) throws InterruptedException { // create object of PriorityBlockingQueue PriorityBlockingQueue<Integer> PrioQueue = new PriorityBlockingQueue<Integer>(); // Add numbers to PriorityBlockingQueue PrioQueue.put(45815616); PrioQueue.put(4981561); PrioQueue.put(4594591); PrioQueue.put(9459156); // get String representation of PriorityBlockingQueue String str = PrioQueue.toString(); // Creating a comparator using comparator() Comparator comp = PrioQueue.comparator(); // Displaying the comparator values System.out.println("Comparator value: " + comp); if (comp == null) System.out.println("PriorityBlockingQueue" + "follows natural ordering"); else System.out.println("PriorityBlockingQueue follows" + comp); } }
Comparator value: null PriorityBlockingQueuefollows natural ordering
Ejemplo 2: para demostrar el método toString() en PriorityBlockingQueue que contiene una lista de strings.
// Java Program Demonstrate comparator() // method of PriorityBlockingQueue import java.util.concurrent.PriorityBlockingQueue; import java.util.*; // Comparator to compare Strings class COMPARING implements Comparator<String> { public int compare(String str1, String str2) { return str2.compareTo(str1); } } public class GFG { public static void main(String[] args) throws InterruptedException { // define capacity of PriorityBlockingQueue int capacityOfQueue = 5; // create object of PriorityBlockingQueue // by passing capacity and comparator class // as parameters. PriorityBlockingQueue<String> characters = new PriorityBlockingQueue<String>(capacityOfQueue, new COMPARING()); // Add Strings characters.add("Geeks"); characters.add("forGeeks"); characters.add("A computer portal"); // Getting the comparator using comparator() Comparator comp = characters.comparator(); // Displaying the comparator values System.out.println("Comparator value is: " + comp); if (comp == null) System.out.println("PriorityBlockingQueue" + "follows natural ordering"); else System.out.println("PriorityBlockingQueue follows: " + comp); // display result System.out.println("\nThe elements after custom Comparator"); for (String e : characters) System.out.print(e + ", "); } }
Comparator value is: COMPARING@28d93b30 PriorityBlockingQueue follows: COMPARING@28d93b30 The elements after custom Comparator forGeeks, Geeks, A computer portal,
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA