Java Collections Framework
Java collections framework — это набор связанных классов и интерфейсов, реализующих широко используемые структуры данных — коллекции. Он был спроектирован и разработан, в первую очередь, Джошуа Блохом.
Хотя это framework[1], он работает как библиотека.
Архитектура
Почти все коллекции в Java порождаются интерфейсом java.util.Collection[док. 1], который определяет основную структуру всех коллекций. Он определяет методы add() и remove() для добавления и удаления элементов, а также метод toArray(), который возвращает массив, состоящий из элементов данной коллекции. И, метод contains() проверяет содержится ли данный элемент в коллекции. Интерфейс Collection наследуется от интерфейса java.lang.Iterable[док. 2].
Интерфейс List
В JCF списки реализуются через интерфейс java.util.List[док. 3]. Два конкретных класса имплементируют List. Первый, java.util.ArrayList[док. 4], который реализует список на основе массива. Второй реализацией является java.util.LinkedList[док. 5], который реализует java.util.List[док. 3] как двусвязный список.
Интерфейс Set
Интерфейс java.util.Set[док. 6] реализует концепцию множества. Множество не может содержать двух одинаковых элементов. К тому же множество не устанавливает порядок. Set имплементируется java.util.HashSet[док. 7], java.util.LinkedHashSet[док. 8] и java.util.TreeSet[док. 9].
См. также
Примечания
Документация
Источники
Ссылки
- CollectionSpy - a Java profiler that focuses on the Collections Framework
- Collections benchmark (insertions, iterations) Java SE 1.8