Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/03/2013, 19:19
maurikius1983
Usuario no validado
 
Fecha de Ingreso: abril-2012
Mensajes: 134
Antigüedad: 12 años, 1 mes
Puntos: 0
Array de objetos como atributo

Os comento tengo dos clases y una de ellas tiene como atributo un array de objetos de otra clase, el problema me lo encuentro para llenar el array y hacer consultas. os dejo el codigo.

Esta es la clase campeonato la que tiene el array de cla clase Equipo
Código:
public class Campeonato {

    private String nombreCampeonato;
    private Equipo equipo[] = new Equipo[6];
    private String equipos;

    public String getNombreCampeonato() {
        return nombreCampeonato;
    }

    public Equipo[] getEquipo() {
        return equipo;
    }

    public String getEquipos() {
        return equipos;
    }

    public void setNombreCampeonato(String nombreCampeonato) {
        this.nombreCampeonato = nombreCampeonato;
    }

    public void setEquipo(Equipo[] equipo) {
        this.equipo = equipo;
    }

    public void setEquipos(String equipos) {
        this.equipos = equipos;
    }
    
}
Clase Equipo
Código:
public class Equipo{

    private String nombreEquipo;
    private byte pJugados;
    private byte pGanados;
    private byte pEmpatados;
    private byte pPerdidos;
    private byte gFavor;
    private byte gContra;
    private byte puntos;

    public Equipo() {
        this.nombreEquipo = "";
        this.pJugados = 0;
        this.pGanados = 0;
        this.pEmpatados = 0;
        this.pPerdidos = 0;
        this.gFavor = 0;
        this.gContra = 0;
        this.puntos = 0;
    }

    public String getNombreEquipo() {
        return nombreEquipo;
    }

    public byte getpJugados() {
        return pJugados;
    }

    public byte getpGanados() {
        return pGanados;
    }

    public byte getpEmpatados() {
        return pEmpatados;
    }

    public byte getpPerdidos() {
        return pPerdidos;
    }

    public byte getgFavor() {
        return gFavor;
    }

    public byte getgContra() {
        return gContra;
    }

    public byte getPuntos() {
        return puntos;
    }

    public void setNombreEquipo(String nombreEquipo) {
        this.nombreEquipo = nombreEquipo;
    }

    public void setpJugados(byte pJugados) {
        this.pJugados = pJugados;
    }

    public void setpGanados(byte pGanados) {
        this.pGanados = pGanados;
    }

    public void setpEmpatados(byte pEmpatados) {
        this.pEmpatados = pEmpatados;
    }

    public void setpPerdidos(byte pPerdidos) {
        this.pPerdidos = pPerdidos;
    }

    public void setgFavor(byte gFavor) {
        this.gFavor = gFavor;
    }

    public void setgContra(byte gContra) {
        this.gContra = gContra;
    }

    public void setPuntos(byte puntos) {
        this.puntos = puntos;
    }
}
Y la principal

Código:
public class GestionClubsConsolas {

    static int leer_opcion() {
        int opcion = -1;
        do {
            System.out.println("\nIntroduzca opcion: ");
            opcion = Leer.datoInt();
        } while (opcion < 0 || opcion > 5);

        return opcion;
    }

    static void mostrar_menu() {
        System.out.println("\nMENU PRINCIPAL");
        System.out.println("\n------------------------------------------------");
        System.out.println("\n1.--> Nuevo Campeonato.");
        System.out.println("\n2.--> Actualizar Campeonato.");
        System.out.println("\n3.--> Consultar Campeonato.");
        System.out.println("\n\n0.--> Salir.");
        System.out.println("\n------------------------------------------------");
    }

    static void tratar_opcion(int op, Campeonato campeonato) {

        switch (op) {

            case 0:
                //Salir();
                break;
            case 1:
                nuevoCampeonato(campeonato);
                break;
            case 2:
                //ActualizarCampeonato();
                break;
            case 3:
                //ConsultarCampeonato();
                break;
        }
    }

    public static void main(String args[]) {

        int opcion = -1;
        Campeonato campeonato = new Campeonato();

        do {
            mostrar_menu();
            opcion = leer_opcion();
            tratar_opcion(opcion, campeonato);
        } while (opcion != 0);

        System.out.println("\n\nFIN DEL PROGRAMA.\n\n");
    }

    static void nuevoCampeonato(Campeonato campeonato) {
        String nombre;
        System.out.println("Dele un nombre al campeonato");
        nombre = Leer.dato();
        campeonato.setNombreCampeonato(nombre);
        System.out.println("El nombre del campeonato será: " + campeonato.getNombreCampeonato());

        introducirEquipos(campeonato);
    }

    static void introducirEquipos(Campeonato campeonato) {
        int i;
        String nombre;

        for (i = 0; i < campeonato.getEquipo().length; i++) {
            System.out.println("Introduzca el nombre del equipo " + (i+1) + ".");
            nombre = Leer.dato();
        }
    }
}
En las letras negritas tengo el problema no se como llenar el array con el nombre de los equipos.