Тема  2. Collections Framework

Содержание

  1. Контейнеры
    1. Коллекции
      1. Интерфейс Collection
      2. Итераторы
      3. Класс AbstractCollection
    2. Множества
      1. Интерфейс Set
      2. Методы equals и hashCode
      3. Реализации множеств и базовые классы
    3. Списки
      1. Интерфейс List
      2. Итераторы по спискам
      3. Реализации списков и базовые классы
    4. Очереди и деки
      1. Интерфейс Queue
      2. Интерфейс Dequeue
      3. Реализации очередей и деков, базовые классы
  2. Отображения
    1. Интерфейс Map
    2. Пары и проекции отображений
    3. Реализации отображений и базовые классы
  3. Упорядоченные коллекции
    1. Сравнение элементов и согласованность с equals
    2. Упорядоченные множества
    3. Упорядоченные отображения
    4. Очередь с приоритетами
  4. Алгоритмы
    1. Класс Collections
    2. Класс Arrays
  5. Устаревшие коллекции

Слайды

HTML

Примеры

zip

Домашнее задание 2. Множество на массиве

  1. Разработайте класс ArraySet, реализующий неизменяемое упорядоченное множество.
    • Класс ArraySet должен реализовывать интерфейс SortedSet (простой вариант) или NavigableSet (сложный вариант).
    • Все операции над множествами должны производиться с наилучшей асимптотической эффективностью.
  2. При выполнении задания следует обратить внимание на:
    • Применение стандартных коллекций.
    • Избавление от повторяющегося кода.
    • Отсутствие Unchecked warnings при компиляции.
    • Отсутствие излишних подавленных unchecked warnings.