Author Topic: Pilay y excepciones  (Read 42 times)

Dana

  • Newbie
  • *
  • Posts: 4
  • Karma: 0
    • View Profile
Pilay y excepciones
« on: Noviembre 08, 2020, 06:46:06 pm »
Buenos días, necesito ayuda para integrar una excepción en una clase de pilas. En concreto debo lanzar una excepción en el caso de que la pila esté vacía, en caso contrario me mostrará el número más alto de esa pila.

Gracias.

Clase PilasMax
Code: [Select]
public static int numMax(Pila pila) throws PilaVacia{
 
 
}
 
}

Clase Test01
Code: [Select]
public static void main(String[] args) throws Exception {
 
Pila pila = new PilaEnlazada();
 
try {
System.out.println(pila);
System.out.println(PilasMax.numMax(pila));
} catch (PilaVacia e) {
e.printStackTrace();
}
 
}
 
}

Clase PilaEnlazada
Code: [Select]
public class PilaEnlazada implements Pila {

    private Nodo cima;

    public PilaEnlazada() {
        cima = null;
    }

    public void apilar(Object elemento) {
        Nodo nodo = new Nodo(elemento);
            nodo.setEnlace(cima);
        cima = nodo;
    }

    public void desapilar() throws DesbordamientoInferior {
        if (esVacia()) {
            throw new DesbordamientoInferior("Imposible desapilar");
        }
        cima = cima.getEnlace();
    }

    public Object cima() throws DesbordamientoInferior {
        if (esVacia()) {
            throw new DesbordamientoInferior("Imposible consultar la cima");
        }
        return cima.getElemento();
    }

    public boolean esVacia() {

        return (cima == null);
    }
}

 

ey