Igualar arreglo de un metodo a otro metodo
Publicado por Carlos Contreras Lomas (1 intervención) el 22/02/2017 05:53:39
Porque mi programa al momento de de imprimir los datos del arreglo Persona me pone en todo el arreglo los ultimos valores que habia introducido en vez de poner los primeros valores que introduje y despues los siguientes que introduje y asi sucesivamente.
MAIN
REGISTRO
MAIN
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
import java.util.Scanner;
public class TestRegistro{
public static void main(String args[]){
Fecha f = new Fecha();
Registro R= new Registro();
Persona P = new Persona();
int a = 0;
while (a<5)
{
System.out.println("1.- Alta de persona");
System.out.println("2.- Baja de una persona");
System.out.println("3.- Cambios");
System.out.println("4.- Imprimir informacion");
System.out.println("5.- Salir");
System.out.println("Introduzca la opcion que quiera: ");
Scanner entrada = new Scanner (System.in);
a = entrada.nextInt();
switch(a)
{
case 1:
String a1, b1, c1;
int d,b,c;
//Fecha f = new Fecha();
entrada.nextLine();
System.out.println("Nombre:");
a1 = entrada.nextLine();
System.out.println("Apellido Paterno:");
b1 = entrada.nextLine();
System.out.println("Apellido Materno:");
c1 = entrada.nextLine();
P. setNombre(a1);
P. setapellidoPaterno(b1);
P. setapellidoMaterno(c1);
System.out.println("Dia:");
d = entrada.nextInt();
System.out.println("Mes:");
b = entrada.nextInt();
System.out.println("Anio:");
c = entrada.nextInt();
f.setdia(d);
f.setmes(b);
f.setanio(c);
P.setFechaNacimiento(f);
R.setRegistro(P);
break;
case 4:
R.ImprimirRegistro();
}
}
}
}
REGISTRO
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
public class Registro {
public int numeroPersona=0;
public Persona P[];
int numBaja,a=0;
public Fecha F;
public Registro(){
P= new Persona[1000];
}
public void setRegistro( Persona P1){
System.out.println(P[numeroPersona].getNombre());
System.out.println(P1.getNombre());
P[numeroPersona]=P1;
System.out.println(P[numeroPersona].getNombre());
numeroPersona++;
a++;
}
public void ImprimirRegistro(){
int a;
for(a=0;a<numeroPersona;a++)
{
System.out.println(a);
System.out.println("Nombre: "+P[a].getNombre());
System.out.println("Apeliido Paterno: "+P[a].getapellidoPaterno());
System.out.println("Apeliido Materno: "+P[a].getapellidoMaterno());
F =new Fecha ();
F=P[a].getFechaNacimiento();
System.out.println(F.imprimirfecha());
}
}
}
Valora esta pregunta


0