Interfaz de cola de Java
Interfaz de cola de Java
En este tutorial, aprenderemos sobre la interfaz Java Queue y sus métodos.
El Queue
La interfaz del marco de colecciones de Java proporciona la funcionalidad de la estructura de datos de la cola. Extiende el Collection
interfaz.
Clases que implementan cola
Desde el Queue
es una interfaz, no podemos proporcionar la implementación directa de la misma.
Para utilizar las funcionalidades de Queue
, necesitamos usar clases que lo implementen:
- ArrayDeque
- Lista enlazada
- Cola de prioridad
Interfaces que extienden la cola
El Queue
La interfaz también se amplía con varias subinterfaces:
Deque
BlockingQueue
BlockingDeque
Funcionamiento de la estructura de datos de la cola
En las colas, los elementos se almacenan y se accede a ellos en Primero en entrar, primero en salir manera. Es decir, los elementos se agregan desde atrás y retirado del frente .
¿Cómo usar la cola?
En Java, debemos importar java.util.Queue
paquete para usar Queue
.
// LinkedList implementation of Queue
Queue<String> animal1 = new LinkedList<>();
// Array implementation of Queue
Queue<String> animal2 = new ArrayDeque<>();
// Priority Queue implementation of Queue
Queue<String> animal 3 = new PriorityQueue<>();
Aquí, hemos creado objetos animal1 , animal2 y animal3 de clases LinkedList
, ArrayDeque
y PriorityQueue
respectivamente. Estos objetos pueden usar las funcionalidades del Queue
interfaz.
Métodos de cola
El Queue
la interfaz incluye todos los métodos del Collection
interfaz. Es porque Collection
es la súper interfaz de Queue
.
Algunos de los métodos comúnmente utilizados del Queue
interfaz son:
- añadir() - Inserta el elemento especificado en la cola. Si la tarea tiene éxito,
add()
devuelvetrue
, si no, lanza una excepción. - oferta() - Inserta el elemento especificado en la cola. Si la tarea tiene éxito,
offer()
devuelvetrue
, si no, devuelvefalse
. - elemento() - Devuelve la cabeza de la cola. Lanza una excepción si la cola está vacía.
- mirar() - Devuelve la cabeza de la cola. Devuelve
null
si la cola está vacía. - eliminar() - Devuelve y elimina la cabeza de la cola. Lanza una excepción si la cola está vacía.
- encuesta() - Devuelve y elimina la cabeza de la cola. Devuelve
null
si la cola está vacía.
Implementación de la Interfaz de Cola
import java.util.Queue;
import java.util.LinkedList;
class Main {
public static void main(String[] args) {
// Creating Queue using the LinkedList class
Queue<Integer> 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
Queue: [1, 2, 3] Accessed Element: 1 Removed Element: 1 Updated Queue: [2, 3]
Para obtener más información, visite Java LinkedList.
import java.util.Queue;
import java.util.PriorityQueue;
class Main {
public static void main(String[] args) {
// Creating Queue using the PriorityQueue class
Queue<Integer> 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
Queue: [1, 5, 2] Accessed Element: 1 Removed Element: 1 Updated Queue: [2, 5]
Para obtener más información, visite Java PriorityQueue.
En los próximos tutoriales, aprenderemos sobre diferentes subinterfaces del Queue
interfaz y su implementación en detalle.
Java