На этом шаге мы рассмотрим интерфейсы Collection и Iterator
Интерфейсы Collection и Iterator расположены в пакете java.util. Рассмотрим каждый из них.
Интерфейс java.util.Collection является базовым интерфейсом для коллекций стандартной библиотеки в Java. Он содержит множество функций для работы с коллекциями. Перечислим ниже лишь на наш взгляд самые часто используемые функции из данного интерфейса:
Все коллекции стандартной библиотеки Java реализуют интерфейс Collection, за исключением коллекции Map (о ней мы поговорим позднее).
В Java существует несколько способов обхода элементов коллекции. В интерфейсе Collection есть функция, которая возвращает объект класса, который реализует интерфейс java.util.Iterator. В интерфейсе Iterator есть 4 функции для работы с итераторами. Ниже перечислим каждую из них:
Обратим внимание на ключевое слово default в объявлении функций remove() и forEachRemaining(Consumer<? super E> action). Это ключевое слово было добавлено в Java 8. Причина добавления следующая. Представим, что вы написали некоторую библиотеку, в которой есть несколько интерфейсов, например 20. В один прекрасный момент вы решили добавить в некоторые из них несколько новых методов. После чего разработчикам программ, которые используют вашу библиотеку в своих проектах, должны будут исправить свои приложения, так как любой класс, реализующий какой то интерфейс должен реализовывать все методы, определенные в этом интерфейсе. Если вашу библиотеку используют многие программисты по всему миру, то это становится проблемой всего мира. Разработчики Java решили эту проблему реализацией методов в интерфейсе по умолчанию. Достаточно пометить такой метод ключевым словом default и написать нужную вам реализацию.
Коллекции в Java можно разбить на 4 группы:
Также в стандартной библиотеке Java есть следующие коллекции: Vector, Stack, Dictionary и Hashtable. Использовать их крайне нежелательно, так как эти коллекции устарели и возможно в последующих версиях Java будут исключены из библиотеки.
На следующем шаге мы рассмотрим интерфейс List