Está en la página 1de 3

Cola

import java.util.Vector;

public class Cola <Tipo> {

//private int inicio;


//private int fin;
private int size;
privateVector<Tipo> elementos;

public Cola() {
super();
elementos = new Vector<Tipo>();
//inicio = fin = 0;
size = 0;
}

public boolean colaVacia () {


//if ( (fin-inicio)==0) {
if ( size==0) {
return true;
}
return false;
}

public void encolar ( Tipo o ) {


//elementos.add(fin++, o);
elementos.add(size++, o);
}

public Tipo desencolar () {


Tipo retorno;

try {
if(colaVacia())
throw new ErrorColaVacia();
else {
//return elementos.get(inicio++);
retorno = elementos.get(0);
elementos.remove(0);
size--;
return retorno;
}
} catch(ErrorColaVacia error) {
System.out.println("ERROR: la cola esta vacía");
return null;
}
}
/*
public int getFin() {
return fin;
}

public int getInicio() {


return inicio;
}
*/
public int getSize() {
//return (fin-inicio);
return (size);
}
}

@SuppressWarnings("serial")
class ErrorColaVacia extends Exception {
public ErrorColaVacia() {
super();
}
}

Test
public class Test {

@SuppressWarnings("unchecked")
public static void main(String[] args) {
Cola cola;

cola = new Cola<String>();


System.out.println("Elementos en cola: " + cola.getSize());

cola.encolar("Uno");
System.out.println("Elementos en cola: " + cola.getSize());

cola.encolar("Dos");
System.out.println("Elementos en cola: " + cola.getSize());

System.out.println("Extraigo.........: " + cola.desencolar().toString());


System.out.println("Elementos en cola: " + cola.getSize());

cola.encolar("Tres");
System.out.println("Elementos en cola: " + cola.getSize());

System.out.println("Extraigo.........: " + cola.desencolar().toString());


System.out.println("Elementos en cola: " + cola.getSize());
System.out.println("Extraigo.........: " + cola.desencolar().toString());
System.out.println("Elementos en cola: " + cola.getSize());

System.out.println("Extraigo.........: " + cola.desencolar().toString());


System.out.println("Elementos en cola: " + cola.getSize());

También podría gustarte