Java Collections Framework

Логотип Викиучебника Имеется викиучебник по теме «Collections»

Java collections framework — это набор связанных классов и интерфейсов, реализующих широко используемые структуры данных — коллекции. Он был спроектирован и разработан, в первую очередь, Джошуа Блохом.

Хотя это framework[1], он не имеет явных критических участков кода[источник не указан 3068 дней], и работает как библиотека.

Архитектура

Почти все коллекции в 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.

См. также

  • Контейнер

Примечания

  1. 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