Olá galera =) irei postar meu código sobre pilhas abaixo e queria que analisassem e dissessem o que acharam:
Classe com os método push e pop:
[code]import javax.swing.JOptionPane;
public class MetodosStack {
public String [] elemento=new String [10];
public String resultado="";
public int i;
public void push(int i){
for(i=0;i<10;i++){
this.elemento[i]=JOptionPane.showInputDialog("Digite"+" "+(i+1)+"º"+" elemento");
if( ((String)this.elemento[i]).isEmpty()){
JOptionPane.showMessageDialog(null,"O elemento não pode ser nulo");
System.exit(1);
}
}
for(i=10-1;i>=0;i--){
resultado=resultado+((i+1)+"["+this.elemento[i])+"]"+"\n";
JOptionPane.showMessageDialog(null,"Sua pilha está assim: "+"\n"+resultado);
}
}
public String pop() {
if(this.elemento[i].isEmpty()){
JOptionPane.showMessageDialog(null,"Adicione um elemento a pilha!!!");
}
for(i=10-1;i>=5;i--){
String resultado=" ";
resultado=resultado+"Removendo "+(i+1)+"º "+"elemento: "+"\n"+(i+1)+"["+(this.elemento[i])+"]"+"\n";
JOptionPane.showMessageDialog(null,"\n"+resultado);
}
for(i=5-1;i>=0;i--){
String resultado;
resultado=((i+1)+"["+this.elemento[i]+"]")+"\n";
JOptionPane.showMessageDialog(null,"Pilha atual: "+"\n"+resultado+"\n");
}
return resultado=" ";
}
}
[/code]
Classe principal:
[code]import javax.swing.JOptionPane;
public class PrincipalStack {
/**
* by:Robson Barreto
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
MetodosStack stack= new MetodosStack();
int op=0;
do{
op=Integer.parseInt(JOptionPane.showInputDialog(“Selecione uma opção: “+”\n”+“1- Empilhar”+"\n"+“2-Desempilhar”));
switch(op){
case 1:stack.push(0);
break;
case 2:
JOptionPane.showMessageDialog(null,"\n"+stack.pop());
break;
}
}while(op!=0);
}
}[/code]
Obrigado !!!