Pila en Java
Publicado por Jane (1 intervención) el 19/10/2018 04:22:28
Hola, quiero hacer una pila en java, que ingrese datos y que se puedan eliminar.
este es mi código, pero a la hora de eliminar datos, se eliminan todos los que están en la pila uno por uno los va mostrando, quiero que solo se elimine un dato y que regrese al menú. Ojala alguien pueda orientarme.
Muchas gracias
este es mi código, pero a la hora de eliminar datos, se eliminan todos los que están en la pila uno por uno los va mostrando, quiero que solo se elimine un dato y que regrese al menú. Ojala alguien pueda orientarme.
Muchas gracias
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package pilas;
import javax.swing.JOptionPane;
public class Pilas {
public static void main(String[] args) {
int op=0;
int [] pila=new int[0];
do{
op=Integer.parseInt(JOptionPane.showInputDialog(null,"Menú\n 1.-tamaño\n 2.-Agregar\n 3.- Atender \n 10.- Salir"));
switch(op){
case 1:
JOptionPane.showMessageDialog(null,"El tamaño es: "+pila.length);break;
case 2:
pila=agregar(pila);break;
case 3:
pila=atender(pila);break;
}
}while(op!=10);
}
private static int[] agregar(int []col){
int tamanio=col.length;
int [] colonTemp=new int[tamanio+1];
for (int i=0; i<=tamanio; i++){
if(i==tamanio){
colonTemp[i]=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el dato a agregar"));
}
else{
colonTemp[i]=col[i];
}
}
return colonTemp;
}
private static int[] atender(int []col){
int tamanio=col.length;
if(tamanio==0){
JOptionPane.showMessageDialog(null,"La cola esta vacía");
}else{
int [] colonTemp=new int[tamanio-1];
for (int i=0; i<tamanio; i++){
tamanio--;
JOptionPane.showMessageDialog(null,"El número atendido es "+col[tamanio]);
}
col=colonTemp;
}
return col;
}
}
Valora esta pregunta
0