Java - ¿ Como Modificar datos en un arreglo?

 
Vista:
sin imagen de perfil

¿ Como Modificar datos en un arreglo?

Publicado por carlos (3 intervenciones) el 30/11/2016 03:08:37
Tengo este menú de registros de jugadores, Una de las opciones(Case 4 ) Es Modificar la posición pero no puedo hacer que sirve, alguien puede echar un vistazo al código y decirme como hacer que funcione :(?
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
public static void main(String[] args)
{
	int ap= -1,i,op,p = 0,NumBuscar,buscar ;
	Scanner entrada =new Scanner(System.in);
	boolean existe=false;
	boolean encontrar=false;
	String aux = "";
	int []Numero=new int[5];
	String[] Nombre=new String[5];
	int[]Edad=new int[5];
	String[] Posicion=new String[5];
	do
	{
	    op=Integer.parseInt(JOptionPane.showInputDialog("Menu\n1.-Registro del jugador\n2.-Consulta General\n3.-Busqueda por Numero de Jugador\n4.-Modificar La Posicion\n5.-Eliminar\n6.-Salida"));
		switch(op)
		{
		case 1:
		if(ap!=4)
		{
		  encontrar=false;
		 NumBuscar=Integer.parseInt(JOptionPane.showInputDialog("Dame Numero de Jugador"));
		  for(i=0;i<=ap;i++)
		  {
			  if(NumBuscar==Numero[ap])
				  encontrar=true;
		  }//for
		  if(encontrar==false)
		  {
			  ap++;
 
			  Numero[ap]=NumBuscar;
			  Nombre[ap]=JOptionPane.showInputDialog("Dame Nombre de Jugador");
			  Edad[ap]=Integer.parseInt(JOptionPane.showInputDialog("Dame Edad de Jugador"));
			  p=Integer.parseInt(JOptionPane.showInputDialog("Dame la Posicion\n1.-Delantero\n2.-Portero\n3.-Defensa\n4.-MedioCampista"));
			  if(p==1)
				  Posicion[ap]="Delantero";
			  if(p==2)
				  Posicion[ap]="Portero";
			  if(p==3)
				  Posicion[ap]="Defensa";
			  if(p==4)
				  Posicion[ap]="MedioCampista";
 
		  }//if
		  else
			  JOptionPane.showMessageDialog(null, "El numero de jugador ya existe");
 
		}
		  else
			  JOptionPane.showMessageDialog(null, "No Hay Espacio");
		break;
		case 2: if(ap!=-1)
		{
			aux="";
			for(i=0;i<=ap;i++)
			{
				aux=aux+"\nNumero de Jugador: "+Numero[i]+ "\nNombre del Jugador: " +Nombre[i]+"\nEdad Del Jugador: " +Edad[i]+"\nPosicion del Jugador: " +Posicion[i]+ "\n\n";
 
			}//for
			JOptionPane.showMessageDialog(null, "Consulta General\n\n "+aux );
 
		}//if
		else
			JOptionPane.showMessageDialog(null, "No hay Datos");
		break;
		case 3:
		if(ap!=-1)
		{
		   existe=false;
		buscar=Integer.parseInt(JOptionPane.showInputDialog("Dame Numero a Buscar"));
 
 
		for(i=0;i<=ap;i++)
		{
			if(buscar==(Numero[i]))
			{
				existe=true;
				JOptionPane.showMessageDialog(null, "\nNumero de Jugador: "+Numero[i]+"\n Nombre del Jugador: "+Nombre[i]+"\nEdad del Jugador: "+Edad[i]+"\nPosicion del Jugador: "+Posicion[i]+"\n\n");
			}//if
		}//for
		if(existe==false)
 
			JOptionPane.showMessageDialog(null, "El numero " +buscar+ " No Existe");
		}
		else
 
			JOptionPane.showMessageDialog(null, "No hay Datos");
 
		break;
		case 4:   if(ap!=-1)
		{
			existe=false;
			buscar=Integer.parseInt(JOptionPane.showInputDialog("Dame Numero de Jugador a Modificar"));
			for(i=0;i<=ap;i++)
			{
				if(buscar==(Numero[i]))
				{
					existe=true;
					String nuevapo = (JOptionPane.showInputDialog("Dame Nueva Posicion\n1.-Delantero\n2.-Portero\n3.-Defensa\n4.-Mediocampista"));
					if(p==1)
						Posicion[ap]="Delantero";
					if(p==2)
						Posicion[ap]="Portero";
					if(p==3)
						Posicion[ap]="Defensa";
					if(p==4)
						Posicion[ap]="Mediocampista";
					Posicion[i]=nuevapo;
 
				}//if
			}//for
			if(existe==true)
			{
				JOptionPane.showMessageDialog(null,"Posicion Modificada  ");
			}
			else
				JOptionPane.showMessageDialog(null, "El numero " +buscar+ " No Existe");
		}
		else
			JOptionPane.showMessageDialog(null, "No Hay Datos");
					break;
		case 5 : if(ap!=-1)
		{
			ap--;
		}
		else
			JOptionPane.showMessageDialog(null, "No hay Registros");
			break;
		}//switch
 
	}while(op!=6);//while
	JOptionPane.showMessageDialog(null, "Fin del Programa");
 
}//main
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Lawliet
Val: 653
Bronce
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

¿ Como Modificar datos en un arreglo?

Publicado por Lawliet (303 intervenciones) el 30/11/2016 05:46:18
Hola...

Realice la ejecución de tu código y déjame decirte que es funcional; es decir, si realiza el cambio de posición del jugador de manera correcta pero en vez de mostrar el nombre de la posición muestras el número de la posición. Te anexo algunas capturas para que veas el resultado en mi local.

A)
Jugadores-I

B)
Jugadores-II

C)
Jugadores-III

Sin más que comentar, quedo al pendiente de cualquier duda y/o comentario.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar