Коллекции – это специальный вид классов, предназначенных для хранения и управления многими объектами.
На практике довольно часто возникают случаи, когда объект задается многократно. В подобных случаях довольно удобна нумеровка подобных объектов. Например:
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 программа выдаст ошибку, присущую всем простым массивам.