filmov
tv
Java SE. Урок 33. Java Collections Framework ( коллекции Java )
Показать описание
Основой Java Collections Framework являются два несвязанных базовых интерфейса: Collection и Map.
Collection — основной интерфейс, который описывает базовые методы, которыми должна обладать любая коллекция. Стоит отметить, что интерфейс collection, как и его потомки реализуют интерфейс Iterable.
Set — интерфейс используемый для работы с множеством, содержащим уникальные элементы.
SortedSet — интерфейс расширяет интерфейс Set и задает поведение для работы с отсортированными коллекциями. Другими словами, это отсортированная коллекция Set.
NavigableSet — интерфейс расширяет интерфейс SortedSet и существенно облегчает поиск элементов в коллекции.
List — интерфейс задает поведение для работы со списками.
Queue — интерфейс задает поведение для работы с очередью.
Deque — интерфейс расширяет интерфейс Queue и задает поведение для работы с двунаправленной очередью.
Map — интерфейс — карта отображения вида «ключ-значение».
SortedMap — интерфейс расширяет интерфейс Map и задает поведение для работы с отсортированными коллекциями. Другими словами, это отсортированная коллекция Map.
NavigableMap — интерфейс расширяет интерфейс SortedMap и добавляет новые возможности навигации и поиска по ключу.
Все коллекции реализуют интерфейсы Serializable и Cloneable (кроме WeakHashMap). Классы реализующие интерфейс List,Set — так же реализуют интерфейс Iterable.
Говоря о коллекциях стоит отметить, что они похожи на массивы. И не удивительно! В основе многих коллекций лежат массивы. Вообще, необходимость в использовании коллекций появилась в связи с ростом количества используемых объектов. Массивы уже не обеспечивали должной скорости работы. Так же использование массивов было неудобным ввиду конкретного числа содержащихся в них элементов, при превышении количества элементов, необходимо было заново создавать массив и копировать в него элементы текущего. В коллекциях об этом позаботились. Была добавлена возможность автоматического изменения размера коллекции.
Так же хотелось отметить, что коллекции являются хранилищами для любых типов объектов, но не для примитивов. Выходом из ситуации служат оболочки(обертки) классов
Комментарии