Массивы как коллекции

Коллекции – это специальный вид классов, предназначенных для хранения и управления многими объектами.

На практике довольно часто возникают случаи, когда объект задается многократно. В подобных случаях довольно удобна нумеровка подобных объектов. Например:

1. дни месяца нумеруются от 1 до 28(или больше);

2. дома на улице могут иметь номера до тысячи;

3. этажи здания нумеруются от 1 и до 100;

4. участники спортивных соревнований получают номера;

Рассмотрим пример с участниками марафона, которых надо учесть, но общее количество соревнующихся заранее неизвестно.

Сначала создадим класс contestants[участники] со всеми необходимыми полями и методами. Далее объявляем массив следующим образом:

contestants[] contestant;

Теперь мы можем создать экземпляр класса следующим образом:

contestant = new contestants[n];

где n – вероятный предел количества участников.

При каждом увеличении числа соревнующихся на 1, создается новый объект для соответствующего элемента массива и увеличиваем счетчик числа элементов:

Contestant[k] = new contestants(name, number, bestTime);

k++;

У данного метода есть недостаток – при превышении числа соревнующихся числа n программа выдаст ошибку, присущую всем простым массивам.