Java
import javax.swing.*;
import java.io.*;
class Nodo
{
protected Object datos; //propiedad protejida solo debe ser accedida mediante el metodo getElementopublic Nodo siguiente;
public Nodo (Object valor){
datos =valor;
siguiente = null;
}
public Object getElemento(){return datos;}
public Nodo getSig(){return siguiente;}
}class Pila
{
public Nodo tope;
public Pila(){
tope=null;
}
public boolean vacia (){
return tope == null;//==hace la compararcion de primernodo con null
}
public voidapilar(Object dato)
{
Nodo p=new Nodo(dato);
p.datos=dato;
p.siguiente=tope;
tope=p;
}
public Object desApilar(){
if (vacia())
{
JOptionPane.showMessageDialog(null,"La pila esta vacia");
}
Object dat;
Nodo p=tope;dat=p.datos;
tope=tope.siguiente;
p=null;
return dat;
}
public void imprimir(){
if (vacia())
{
JOptionPane.showMessageDialog(null,"PilaVacia");
}
else{
Nodo Actual=tope;
do{
System.out.print(Actual.getElemento().toString()+" ");
Actual=Actual.siguiente;
}
while(Actual != null);System.out.println();//imprime un salto de linea
}
}
}
class Prueba
{
public static void main(String[]args)
{
Pila p=new Pila();
for(int i = 0, j = i++ ; i > j; )
{try
{
int op=Integer.parseInt(JOptionPane.showInputDialog("\n1.- Insertar Elemento \n2.-Eliminar el ultimo elemento \n3.- Imprimir Pila \n4.-Salir \n5.- Revisar 1 elemento"));//Codigo donde puede ocurrir un error
if(op==1)
{
p.apilar(JOptionPane.showInputDialog("INTRODUCE LOS DATOS UNO A UNO"));
}
if(op==2)
{
p.desApilar();...
Regístrate para leer el documento completo.