Cómo inicializar una matriz de objeto en el principal?

Omer Vered:

Tengo un constructor de selección de la persona objeto:

public class Group
{
    final int MAX =10;
    private Person[] _groupOfPersons;
    private int _numOfPersons;


    public Group()
    {
        _groupOfPersons = new Person [MAX];
        _numOfPersons = 0;
    }

Yo también tengo el Método addPerson

¿Cómo declaro el nuevo arreglo en el principal? por lo que puedo añadir, después de las personas? Consigo excepción nula. Quiero llamar la matriz 'el grupo 1'. es la matriz es de tipo Persona? o Grupo? ¿Cómo se crea un nuevo grupo?

Group[] group1 = new Group() \\????

Arvind Kumar Avinash:

Puede hacerlo en cualquiera de las maneras que se muestran a continuación:

class Person {

}

class Group {
    final int MAX = 10;
    private Person[] _groupOfPersons;
    private int _numOfPersons;

    public Group() {
        _groupOfPersons = new Person[MAX];
        _numOfPersons = 0;
    }

    public Person[] get_groupOfPersons() {
        return _groupOfPersons;
    }

    public void set_groupOfPersons(Person[] _groupOfPersons) {
        this._groupOfPersons = _groupOfPersons;
    }

    public int get_numOfPersons() {
        return _numOfPersons;
    }

    public void set_numOfPersons(int _numOfPersons) {
        this._numOfPersons = _numOfPersons;
    }

    public void addPerson(Person person) {
        for (int i = 0; i < MAX; i++) {
            if (_groupOfPersons[i] == null) {
                _groupOfPersons[i] = person;
                return;
            }
        }
    }
}

public class Main {
    public static void main(String[] args) {
        Group group = new Group();

        // First way
        group.get_groupOfPersons()[0] = new Person();

        // Second way
        group.addPerson(new Person());
    }
}

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=341822&siteId=1
Recomendado
Clasificación