Java Collections Framework
![]() | Имеется викиучебник по теме «Collections» |
---|
Java collections framework — это набор связанных классов и интерфейсов, реализующих широко используемые структуры данных — коллекции. Он был спроектирован и разработан, в первую очередь, Джошуа Блохом.
Хотя это framework[1], он не имеет явных критических участков кода[источник не указан 3158 дней], и работает как библиотека.
Архитектура
Почти все коллекции в Java порождаются интерфейсом java.util.Collection
, который определяет основную структуру всех коллекций. Он определяет методы add() и remove() для добавления и удаления элементов, а также метод toArray(), который возвращает массив, состоящий из элементов данной коллекции. И, метод contains() проверяет содержится ли данный элемент в коллекции. Интерфейс Collection наследуется от интерфейса java.lang.Iterable
.
Интерфейс List
В JCF списки реализуются через интерфейс java.util.List
. Два конкретных класса имплементируют List. Первый, java.util.ArrayList
, который реализует список на основе массива. Второй реализацией является java.util.LinkedList
, который реализует java.util.List
как двусвязный список.
Интерфейс Set
Интерфейс java.util.Set
реализует концепцию множества. Множество не может содержать двух одинаковых элементов. К тому же множество не устанавливает порядок. Set имплементируется java.util.HashSet
, java.util.LinkedHashSet
и java.util.TreeSet
.
См. также
- Контейнер
Примечания
- ↑ Why-is-Collection-in-Java-called-a-framework-but-not-a-library
Ссылки
- 'The Java Tutorials - Collections' by Josh Bloch
- Generic Types
- Java Generics and Collections
- Taming Tiger: The Collections Framework
- Collections Lessons
- CollectionSpy - a Java profiler that focuses on the Collections Framework
- Collections benchmark (insertions, iterations) Java SE 1.8