Вопрос по java, arrays – Добавить объект в массив пользовательского класса [duplicate]

11

This question already has an answer here:

How to add new elements to an array? 17 answers

Я новичок в Java, и я пытаюсь создать массив пользовательского класса. Допустим, у меня есть класс под названием car, и я хочу создать множество автомобилей под названием Garage. Как я могу добавить каждую машину в гараж? Вот что я получил:

<code>car redCar = new Car("Red");
car Garage [] = new Car [100];
Garage[0] = redCar;
</code>
Соглашения об именах: переменные начинаются с нижнего регистра, а объекты с верхнего регистра:Car redCar = ..., Car[] garage = ..., garage[0] и т.п. assylias

Ваш Ответ

3   ответа
9

Объявление массива должно быть:

Car[] garage = new Car[100];

Вы также можете просто назначить напрямую:

garage[1] = new Car("Blue");
24

вы должны сохранить счетчик, который содержит количество автомобилей в гараже. Лучше использоватьArrayList вместо массива:

List<Car> garage = new ArrayList<Car>();
garage.add(redCar);
@Dangerosking - Использованиеgarage.get(0)
"And how can I get a particular car in the garage?" docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
+1 за предложение списка :). Следующим шагом будет внедрениеequals() а такжеhashCode() и использоватьSet<Car> (поскольку для одного и того же автомобиля может не иметь смысла дважды находиться в гараже :)).
И как я могу получить конкретную машину в гараже? Например, как мне добавить первую машину? Dangerosking
Можно ли использовать arraylist в абстрактном классе? Как и массив, я могу его создать, но не могу добавить к нему объект. Dangerosking
5

к которым можно будет получить доступ позже, используйте этот код:

for (int i = 0; i < garage.length; i++)
     garage[i] = new Car("argument");

Кроме того, автомобили позже доступны с помощью:

garage[0];
garage[1];
garage[2];
etc.

Похожие вопросы