3 min de lectura

Colas en Java

En Programación, se le llama “Cola” al Tipo de Dato Abstracto que es una Lista en la que sus elementos se introducen (Encolan) únicamente por un extremo que le llamamos “Final de la Cola” y se remueven (Desencolan) únicamente por el extremo contrario al que le llamamos “Frente de la Cola” o “Principio de la Cola”.

Colas en Java con Queue

En Java podemos encontrar variadas formas de crear Colas en pocas lineas de código, un ejemplo es una de sus Interfaces que tiene como nombre “Queue”

Métodos de Queue para manejo de Colas en Java

con la cual podemos crear Colas y que contiene los siguientes métodos para el uso de las mismas.

Para Insertar:
– add(e)
– offer(e)

Para Extraer:
– remove()
– poll()

Para Consultar el Frente:
– element()
– peek()

Como podemos darnos cuenta, hay 2 métodos para cada operación, estos realizan de igual forma las operaciones, pero en cierto caso 1 de ellos retornará un valor especial “null” y el otro lanzará una excepción.

Por ejemplo, los métodos para Extraer llamados: “remove()” y “poll()”. Cuando se intenta extraer un dato de una Cola que ya está vacía el método remove() lanzará una excepción como resultado, en cambio el método poll() simplemente retornará o tomará el valor null.

Código ejemplo de Colas en Java con Queue

Enseguida se muestra un programa ejemplo de la utilización de la interfaz Queue para crear una Cola y los métodos previamente mencionados:

Si en este programa mostrado, hacemos un cambio como el siguiente:

Nos toparemos con un error cuando se desencole el último elemento, puesto que la excepción que lanza en ese caso el método remove() no está siendo considerado.

Al igual al modificar el último método utilizado en el ejemplo:

Ya que, está siendo utilizado cuando la cola se encuentra vacía, al igual que el método remove() nos lanzará una excepción que no esta siendo tratada en el ejemplo.

Creando la cola con la interfaz “Queue” nos limitamos a tener elementos de 1 solo tipo de dato, en cambio, podemos crearla con la clase llamada “LinkedList”, en ella podemos utilizar los mismos métodos que creandola con la interfaz “Queue” y a parte podemos insertar elementos de diferentes tipos de datos en la misma Cola:

Se puede observar que el programa es muy similar al primer ejemplo sin embargo en este estamos creando la Cola desde la clase Linked List y le estamos encolando elementos de distintos tipos de dato.

2 COMENTARIOS

Deja tus comentarios

This site uses Akismet to reduce spam. Learn how your comment data is processed.