En este tutorial, aprenderemos sobre la interfaz Java Queue y sus métodos.
La Queueinterfaz del marco de colecciones de Java proporciona la funcionalidad de la estructura de datos de la cola. Extiende la Collectioninterfaz.
Clases que implementan cola
Dado que Queuees una interfaz, no podemos proporcionar la implementación directa de la misma.
Para usar las funcionalidades de Queue, necesitamos usar clases que lo implementen:
- ArrayDeque
- Lista enlazada
- PriorityQueue

Interfaces que amplían la cola
La Queueinterfaz también se amplía con varias subinterfaces:
DequeBlockingQueueBlockingDeque

Trabajo de la estructura de datos de la cola
En las colas, los elementos se almacenan y se accede a ellos de la manera primero en entrar, primero en salir . Es decir, los elementos se agregan desde atrás y se eliminan desde el frente .

¿Cómo usar Queue?
En Java, debemos importar el java.util.Queuepaquete para poder usar Queue.
// LinkedList implementation of Queue Queue animal1 = new LinkedList(); // Array implementation of Queue Queue animal2 = new ArrayDeque(); // Priority Queue implementation of Queue Queue animal 3 = new PriorityQueue();
Aquí, hemos creado objetos animal1, animal2 y animal3 de clases LinkedList, ArrayDequey PriorityQueuerespectivamente. Estos objetos pueden utilizar las funcionalidades de la Queueinterfaz.
Métodos de cola
La Queueinterfaz incluye todos los métodos de la Collectioninterfaz. Es porque Collectiones la super interfaz de Queue.
Algunos de los métodos de Queueinterfaz más utilizados son:
- add () : inserta el elemento especificado en la cola. Si la tarea es exitosa,
add()regresatrue, si no, lanza una excepción. - oferta () : inserta el elemento especificado en la cola. Si la tarea tiene éxito,
offer()regresatrue, si no, regresafalse. - element () : devuelve el encabezado de la cola. Lanza una excepción si la cola está vacía.
- peek () : devuelve el encabezado de la cola. Devuelve
nullsi la cola está vacía. - remove () : devuelve y elimina el encabezado de la cola. Lanza una excepción si la cola está vacía.
- poll () : devuelve y elimina el encabezado de la cola. Devuelve
nullsi la cola está vacía.
Implementación de la interfaz de cola
1. Implementación de la clase LinkedList
import java.util.Queue; import java.util.LinkedList; class Main ( public static void main(String() args) ( // Creating Queue using the LinkedList class Queue numbers = new LinkedList(); // offer elements to the Queue numbers.offer(1); numbers.offer(2); numbers.offer(3); System.out.println("Queue: " + numbers); // Access elements of the Queue int accessedNumber = numbers.peek(); System.out.println("Accessed Element: " + accessedNumber); // Remove elements from the Queue int removedNumber = numbers.poll(); System.out.println("Removed Element: " + removedNumber); System.out.println("Updated Queue: " + numbers); ) )
Salida
Cola: (1, 2, 3) Elemento accedido: 1 Elemento eliminado: 1 Cola actualizada: (2, 3)
Para obtener más información, visite Java LinkedList.
2. Implementación de la clase PriorityQueue
import java.util.Queue; import java.util.PriorityQueue; class Main ( public static void main(String() args) ( // Creating Queue using the PriorityQueue class Queue numbers = new PriorityQueue(); // offer elements to the Queue numbers.offer(5); numbers.offer(1); numbers.offer(2); System.out.println("Queue: " + numbers); // Access elements of the Queue int accessedNumber = numbers.peek(); System.out.println("Accessed Element: " + accessedNumber); // Remove elements from the Queue int removedNumber = numbers.poll(); System.out.println("Removed Element: " + removedNumber); System.out.println("Updated Queue: " + numbers); ) )
Salida
Cola: (1, 5, 2) Elemento accedido: 1 Elemento eliminado: 1 Cola actualizada: (2, 5)
Para obtener más información, visite Java PriorityQueue.
En los próximos tutoriales, aprenderemos sobre las diferentes subinterfaces de la Queueinterfaz y su implementación en detalle.








