public class Cola {
// Propiedades de la estructura tipo cola
private int inicio;
private int fin;
private int capacidad;
private String[] elementos; // Arreglo de cadenas que simula la estructura tipo cola
// Constructor de la clase que permite crear e inicializar las propiedades
public Cola(int capacidad) {
this.capacidad = capacidad;
this.elementos = new String[capacidad];
this.inicio = 0;
this.fin = 0;
}
// Properties get y set para cada propiedad del objeto
// Obtiene el índice inicio
public int getInicio() {
return this.inicio;
}
// Modifica el índice inicio con un nuevo valor pasado como parámetro
public void setInicio(int inicio) {
this.inicio = inicio;
}
// Obtiene el índice fin
public int getFin() {
return this.fin;
}
// Modifica el índice fin con un nuevo valor pasado como parámetro
public void setFin(int fin) {
this.fin = fin;
}
// Obtiene la capacidad del arreglo (tamaño de la cola)
public int getCapacidad() {
return this.capacidad;
}
// Obtiene todo el arreglo con los elementos actuales de la cola
public String[] getElementos() {
return this.elementos;
}
// Métodos adicionales de la Cola
public boolean estaVacia() {
return this.inicio == this.fin;
}
public boolean estaLlena() {
return this.fin == this.capacidad;
}
// Método para meter un elemento a la cola (Enqueue)
public void insertar(String elemento) {
if (estaLlena()) {
System.out.println("¡Desbordamiento! La cola está llena.");
} else {
elementos[fin] = elemento;
fin++;
System.out.println("Elemento insertado correctamente.");
}
}
// Método para sacar un elemento de la cola (Dequeue)
public String eliminar() {
if (estaVacia()) {
System.out.println("¡Subdesbordamiento! La cola está vacía.");
return null;
} else {
String elementoEliminado = elementos[inicio];
// Desplazamiento de elementos hacia adelante en la cola lineal
for (int i = inicio; i < fin - 1; i++) {
elementos[i] = elementos[i + 1];
}
elementos[fin - 1] = null;
fin--;
System.out.println("Elemento eliminado: " + elementoEliminado);
return elementoEliminado;
}
}
// Método para imprimir los elementos de la cola
public void imprimir() {
if (estaVacia()) {
System.out.println("La cola está vacía. No hay elementos que mostrar.");
} else {
System.out.println("\n--- Elementos de la Cola ---");
for (int i = inicio; i < fin; i++) {
System.out.println("Posición [" + i + "] -> " + elementos[i]);
}
System.out.println("----------------------------\n");
}
}
}
To embed this project on your website, copy the following code and paste it into your website's HTML: