Номер переменной класса Java - PullRequest
0 голосов
/ 16 октября 2011

Я изучаю Java, и теперь у меня есть этот вопрос.

Я создал класс с именем «Driver», и он будет содержать информацию о драйвере (имя и день рождения).

Для создания нового драйвера мне просто нужно сделать:

Driver d1 = new Driver("John", "01/01/1980");

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

Моя проблема в том, что я думаю, что мне нужны x переменные для x драйверов, но переменные могут быть только жестко запрограммированы мной ...

Ответы [ 4 ]

2 голосов
/ 16 октября 2011

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

ArrayList<Driver> drivers = new ArrayList<Driver>();

Driver d1 = new Driver("John", "01/01/1980");
drivers.add(d1); 
2 голосов
/ 16 октября 2011

Или вы можете использовать массив или коллекцию (List или Set):

List<Driver> drivers = new ArrayList<Driver>();
drivers.add(new Driver(..));
drivers.add(new Driver(..));

При чтении из файла вы обычно используете цикл.Поэтому на каждой итерации добавляйте объект в список.

0 голосов
/ 16 октября 2011

Использовать простой массив:

Driver[] drivers = {new Driver("John", "01/01/1980"),
                    new Driver("Smith", "02/02/1990")};

// or

Driver[] drivers = new Driver[2];
drivers[0] = new Driver("John", "01/01/1980");
drivers[1] = new Driver("Smith", "02/02/1990");

Но массив имеет фиксированный размер после его создания. Таким образом, вы можете использовать ArrayList вместо:

List<Driver> drivers = new ArrayList<Driver>();
drivers.add(new Driver("John", "01/01/1980"));
drivers.add(new Driver("Smith", "02/02/1990"));
// ...
0 голосов
/ 16 октября 2011

вы бы создали List<Driver> (или другую коллекцию, например Map), в которой будут храниться все драйверы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...