• Domingo 28 de Abril de 2024, 08:19

Autor Tema:  Recorrer objetos de una clase  (Leído 4574 veces)

emmgfx

  • Nuevo Miembro
  • *
  • Mensajes: 2
  • Nacionalidad: es
    • Ver Perfil
Recorrer objetos de una clase
« en: Domingo 11 de Marzo de 2012, 14:03 »
0
Hola,

Estoy aprendiendo Java y no me entero mucho, es la primera vez que uso un lenguaje con objetos y no se si lo que quiero se puede hacer o lo estoy pensando mal.

Si tengo 3 objetos de una clase (clase Profesor, objetos profe1, profe2 y profe3) como puedo recorrerlos para tratarlos todos uno por uno.

Código: [Seleccionar]
Profesor profe1 = new Profesor("NProfesor1","AProfesor1",21,arrayAlumnos);
Profesor profe2 = new Profesor("NProfesor2","AProfesor2",22,arrayAlumnos);
Profesor profe3 = new Profesor("NProfesor3","AProfesor3",23,arrayAlumnos);

Pongo las clases por si ayudan a entender.

Código: [Seleccionar]
public class Persona {
String nombre;
String apellido;
int edad;

public Persona(String nombre, String apellido, int edad){
this.nombre = nombre;
this.apellido = apellido;
this.edad = edad;
}

public String getNombre(){
return this.nombre;
}
public String getApellido(){
return this.apellido;
}
public int getEdad(){
return this.edad;
}
}
Código: [Seleccionar]
class Profesor extends Persona{
Alumno[] alumnos;
static int length = 0;

public Profesor(String nombre, String apellido, int edad, Alumno[] alumnos){
super(nombre,apellido,edad);
this.alumnos = alumnos;
length++;
}
public Alumno[] getAlumnos(){
return this.alumnos;
}
public String getNombre(){
return this.nombre;
}
}

Gracias : )
« última modificación: Martes 13 de Marzo de 2012, 18:05 por arielb »

caperutxa

  • Miembro activo
  • **
  • Mensajes: 40
  • Nacionalidad: 00
    • Ver Perfil
Re:Recorrer objetos de una clase
« Respuesta #1 en: Lunes 12 de Marzo de 2012, 07:42 »
0
No entiendo demasiado bien a que te refieres con recorrerlos, pero si lo que quieres es que te muestre los valores de cada objeto puedes crear un método que te haga precisamente eso. Luego llamas al método para cada uno de los objetos.

No se si era eso a lo que te referías.
Si quieres obtener resultados diferentes no hagas siempre lo mismo.


arielb

  • Moderador
  • ******
  • Mensajes: 771
  • Nacionalidad: pa
    • Ver Perfil
    • http://coder-pa.blogspot.com
Re:Recorrer objetos de una clase
« Respuesta #2 en: Lunes 12 de Marzo de 2012, 15:54 »
0
Hola, bienvenido al foro.
La opción que te da caperutxa la puedes usar, es una de las más básicas ya más adelante buscaras otra opción.

Código: Java(TM) 2 Platform Standard Edition 5.0
  1. profe1.getNombre()

Saludos,
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16

http://coder-pa.blogspot.com

emmgfx

  • Nuevo Miembro
  • *
  • Mensajes: 2
  • Nacionalidad: es
    • Ver Perfil
Re:Recorrer objetos de una clase
« Respuesta #3 en: Lunes 12 de Marzo de 2012, 22:03 »
0
Hola,

Acabo de ver que habíais respondido, creo que lo de avisar por mail cuando hay respuestas no funciona :S

He utilizado ArrayList, la verdad es que no he acabado de entender la solución que me dabais, quizá no me había explicado bien.

A ver si con esto se entiende mejor : )

Salud y gracias!

Código: [Seleccionar]
package persona;

import java.util.ArrayList;
import java.util.Iterator;

public class main{
public static void main(String[] args) {

Alumno[] arrayAlumnos = new Alumno[5];
ArrayList<Profesor> profesores = new ArrayList<Profesor>();


arrayAlumnos[0] = new Alumno("Nombre1","Apellido1",21,"Primero",1);
arrayAlumnos[1] = new Alumno("Nombre2","Apellido2",22,"Segundo",2);
arrayAlumnos[2] = new Alumno("Nombre3","Apellido3",23,"Tercero",3);
arrayAlumnos[3] = new Alumno("Nombre4","Apellido4",24,"Cuarto");
arrayAlumnos[4] = new Alumno("Nombre5","Apellido5",25,"Quinto",5);

Profesor profe1 = new Profesor("NProfesor1","AProfesor1",21,arrayAlumnos);
Profesor profe2 = new Profesor("NProfesor2","AProfesor2",22,arrayAlumnos);
Profesor profe3 = new Profesor("NProfesor3","AProfesor3",23,arrayAlumnos);

profesores.add(profe1);
profesores.add(profe2);
profesores.add(profe3);

Iterator<Profesor> i = profesores.iterator();

System.out.println(i.toString());

Profesor este;

while(i.hasNext()){
este = (Profesor) i.next();
System.out.println("El profesor "+este.getNombre()+" tiene los alumnos: ");
for (Alumno alumno : este.getAlumnos()) {
System.out.println("# "+alumno.getNombre()+" ("+alumno.getCurso()+")");
}
}


}
}

arielb

  • Moderador
  • ******
  • Mensajes: 771
  • Nacionalidad: pa
    • Ver Perfil
    • http://coder-pa.blogspot.com
Re:Recorrer objetos de una clase
« Respuesta #4 en: Martes 13 de Marzo de 2012, 18:06 »
0
creo que lo de avisar por mail cuando hay respuestas no funciona :S

Cuando creas un tema debes seleccionar la opción que dice "Notificarme al haber nuevas respuestas", para que te lleguen los correos.

Saludos,
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16

http://coder-pa.blogspot.com

iron man

  • Administrador
  • ******
  • Mensajes: 1137
  • Nacionalidad: es
    • Ver Perfil
    • http://www.solocodigo.com/
Re:Recorrer objetos de una clase
« Respuesta #5 en: Miércoles 14 de Marzo de 2012, 06:45 »
0
Además de lo que comenta arielb, en el apartado Notificaciones y email de tu Perfil puedes marcar la casilla Activar la notificación cuando publiques o respondas a un tema.

Un saludo