Как мне добавить этот объект в массив ...? - PullRequest
0 голосов
/ 09 января 2012

Это прошлый экзаменационный вопрос, посвященный массивам, и вот вопрос:

Определите класс с именем Laboratory, который содержит массив компьютеров. Размер массива должен быть указан в конструкторе Лабораторный класс. Ваш класс должен содержать методы для добавления Компьютер в массив. (в начале я должен был определить компьютерный класс с парой атрибутов с помощью конструктора)

Так что я знаю, как сделать первые две части, класс и размер, указанные в конструкторе. Как бы я сделал третью часть (о методах)?

Ответы [ 2 ]

2 голосов
/ 09 января 2012

Если вы уже написали конструктор, который создает массив:

class Laboratory {

    private Computer[] computers;
    private int nextIndex = 0;

    public void addComputer(Computer comp) {
        // throws an ArrayOutOfBoundsException if the user
        // tries to add too many Computers. You might want to
        // do something else by checking that nextIndex < computers.length
        computers[nextIndex] = comp;
        nextIndex += 1;
    }

}
1 голос
/ 09 января 2012

У вас может быть переменная экземпляра с текущим количеством компьютеров в массиве, а затем использовать ее для добавления компьютера

private int computerCount = 0;

public void addComputer(Computer comp)
{
    arrayName[computerCount] = comp;
    computerCount++;
}
...