Saltar al contenido

Java Queue y PriorityQueue – javatpoint

septiembre 23, 2021

La interfaz Java Queue ordena el elemento en forma FIFO (Primero en entrar, primero en salir). En FIFO, el primer elemento se elimina primero y el último elemento se elimina por último.

Declaración de interfaz de cola

Cola de interfaz pública extiende la colección

Métodos de la interfaz de cola de Java

Método Descripción
boolean add (objeto) Se utiliza para insertar el elemento especificado en esta cola y devolver verdadero en caso de éxito.
oferta booleana (objeto) Se utiliza para insertar el elemento especificado en esta cola.
Objeto eliminar () Se utiliza para recuperar y eliminar el encabezado de esta cola.
Encuesta de objeto () Se utiliza para recuperar y eliminar el encabezado de esta cola, o devuelve nulo si esta cola está vacía.
Elemento de objeto () Se utiliza para recuperar, pero no eliminar, el encabezado de esta cola.
Vistazo de objeto () Se utiliza para recuperar, pero no eliminar, el encabezado de esta cola, o devuelve nulo si esta cola está vacía.

Clase PriorityQueue

La clase PriorityQueue proporciona la posibilidad de utilizar cola. Pero no ordena los elementos en modo FIFO. Hereda la clase AbstractQueue.

Declaración de clase PriorityQueue

Veamos la declaración de la clase java.util.PriorityQueue.

clase pública PriorityQueue extiende AbstractQueue implementa Serializable

Ejemplo de Java PriorityQueue

importar java.util. *; class TestCollection12 {public static void main (String args[]) {PriorityQueue cola = nueva PriorityQueue(); queue.add («Amit»); queue.add («Vijay»); queue.add («Karan»); queue.add («Jai»); queue.add («Rahul»); System.out.println («head:» + queue.element ()); System.out.println («cabeza:» + queue.peek ()); System.out.println («iterando los elementos de la cola:»); Iterador itr = queue.iterator (); while (itr.hasNext ()) {System.out.println (itr.next ()); } queue.remove (); queue.poll (); System.out.println («después de eliminar dos elementos:»); Iterador itr2 = queue.iterator (); while (itr2.hasNext ()) {System.out.println (itr2.next ()); }}}

Pruébelo ahora

Output:head:Amit
       head:Amit
       iterating the queue elements:
       Amit
       Jai
       Karan
       Vijay
       Rahul
       after removing two elements:
       Karan
       Rahul
       Vijay

Ejemplo de Java PriorityQueue: Libro

Veamos un ejemplo de PriorityQueue en el que agregamos libros a la cola e imprimimos todos los libros. Los elementos de PriorityQueue deben ser de tipo Comparable. Las clases String y Wrapper son comparables de forma predeterminada. Para agregar objetos definidos por el usuario en PriorityQueue, debe implementar una interfaz comparable.

importar java.util. *; clase Implementos de libros Comparable{int id; Nombre de cadena, autor, editor; cantidad int; Libro público (int id, String name, String autor, String editor, int cantidad) {this.id = id; this.name = nombre; this.author = autor; this.publisher = editor; this.cantity = cantidad; } public int compareTo (Libro b) {if (id> b.id) {return 1; } más si (id cola = nueva PriorityQueue(); // Creando libros Libro b1 = nuevo Libro (121, «Vamos a C», «Yashwant Kanetkar», «BPB», 8); Libro b2 = Libro nuevo (233, «Sistema operativo», «Galvin», «Wiley», 6); Libro b3 = Libro nuevo (101, «Comunicaciones de datos y redes», «Forouzan», «Mc Graw Hill», 4); // Agregar libros a la cola queue.add (b1); queue.add (b2); queue.add (b3); System.out.println («Atravesando los elementos de la cola:»); // Elementos de la cola transversal para (Libro b: cola) {System.out.println (b.id + «» + b.name + «» + b.author + «» + b.publisher + «» + b.quantity); } queue.remove (); System.out.println («Después de eliminar un registro de libro:»); para (Libro b: cola) {System.out.println (b.id + «» + b.name + «» + b.author + «» + b.publisher + «» + b.cantity); }}}

Producción:

Traversing the queue elements:
101 Data Communications & Networking Forouzan Mc Graw Hill 4
233 Operating System Galvin Wiley 6
121 Let us C Yashwant Kanetkar BPB 8
After removing one book record:
121 Let us C Yashwant Kanetkar BPB 8
233 Operating System Galvin Wiley 6
close