Программирование на Java. Collections Framework - фреймверк коллекций объектов. (Лекция 7.1) презентация
Содержание
- 2. Коллекции Часть 1
- 3. Контейнеры (коллекции) В пакет java.util входит одна из самых эффективных подсистем jаvа - каркас коллекций Collections
- 4. Контейнеры (коллекции) Типизированные (параметризованные) коллекции , которые появились в Java 5, позволяют ограничить попадание объектов несоответствующего
- 5. Контейнеры (коллекции) На вершине библиотеки контейнеров Java расположены два основных интерфейса, которые представляют два принципиально разных
- 6. Массивы vs. Коллекции И массивы, и коллекции являются объектами Массивы не могут изменять размер Коллекции не
- 7. Интерфейс Collection Collection представляет собой группу объектов Правила хранения элементов задаются нижележащими интерфейсами, сам же интерфейс
- 8. Интерфейс Collection Collection представляет собой группу объектов Правила хранения элементов задаются нижележащими интерфейсами, сам же интерфейс
- 9. Списки Часть 2
- 10. Иерархия наследования списков
- 11. Интерфейс List List – это список объектов Объекты хранятся в порядке их добавления в список В
- 12. Класс ArrayList Класс ArrayList представляет собой список динамической длины Данные внутри класса хранятся во внутреннем массиве
- 13. Класс ArrayList По умолчанию при создании нового объекта ArrayList создается внутренний массив длиной 10 элементов Collection
- 14. Класс LinkedList Класс LinkedList реализует базовый интерфейс List и представляет собой список динамической длины. Данные внутри
- 15. Класс LinkedList У LinkedList представлен ряд методов, не входящих в интерфейс List: addFirst() и addLast() -
- 16. Интерфейс Queue Класс LinkedList реализует интерфейс Queue , т.е. такому списку легко придать свойства очереди Методы
- 17. Интерфейс Deque Интерфейс Deque определяет «двунаправленную» очередь и, соответственно, методы доступа к первому и последнему элементам
- 18. Интерфейс Deque Каждый из этих методов существует в двух формах Одни методы создают исключительную ситуацию в
- 19. Интерфейс Deque Методы addFirst(), addLast() вставляют элементы в начало и в конец очереди соответственно Метод add()
- 20. Доступ к элементам списков Доступ к элементам списка возможен по индексу с помощью итератора (Iterator) С
- 21. Доступ к элементам списков Доступ с помощью цикла foreach List list = new ArrayList (); //
- 22. Итераторы (Iterator ) Итератор – это вспомогательный объект, используемый для перемещения в одном направлении по коллекции
- 23. Итераторы (Iterator) Получить итератор для прохода коллекции можно с помощью метода iterator(), который определен у интерфейса
- 24. ListIterator ListIterator более мощная разновидность Iterator , поддерживаемая только классами List ListIterator является двусторонним, он может
- 25. ArrayList: index vs. Iterator ArrayList list = new ArrayList(); for (int i=0; i list.add(i); long a
- 26. LinkedList: index vs. Iterator LinkedList list2 = new LinkedList(); for (int i=0; i list2.add(i); a =
- 27. ArrayList vs. LinkedList
- 28. Иерархия наследования множеств
- 29. Интерфейс Set Set – множество неповторяющихся объектов Добавление повторяющихся элементов в Set не вызывает исключений, но
- 30. Классы HashSet и LinkedHashSet Классы HashSet и LinkedHashSet реализуют интерфейс Set Уникальность объектов в них обеспечивается
- 31. Классы HashSet и LinkedHashSet В HashSet объекты хранятся в произвольном порядке LinkedHashSet является наследником класса HashSet.
- 32. Упорядоченные множества (SortedSet) Интерфейс SortedSet служит для спецификации упорядоченных множеств В JDK его реализация представлена в
- 33. Упорядоченные множества (SortedSet) При добавлении объекта в дерево он сразу же размещается в необходимую позицию с
- 34. Упорядоченные множества (SortedSet) При добавлении нового объекта он становится на свое место по порядку в множестве:
- 35. Интерфейс Comparable В Java задача задания функции сравнения решается с использованием интерфейсов Comparable и Comparator Интерфейс
- 36. Интерфейс Comparable Метод compareTo(T t) возвращает: отрицательное число, если this ноль, если this == other; положительное
- 37. Интерфейс Comparator Интерфейс Comparator используется, когда метод compareTo() уже переопределен, но необходимо задать еще какой-то прядок
- 38. Интерфейс Comparator В этом случае создается отдельный вспомогательный класс, реализующий интерфейс Comparator , и уже на
- 39. Пример работы с Deque import java.util.*; public class DequeRunner { public static void printDeque(Deque d){ for
- 40. Пример работы с интерфейсом Deque В данном примере реализована работа с интерфейсом Deque. Методы addFirst(), addLast()
- 41. Интерфейс Map Интерфейс Map ; часто называют ассоциативным массивом Map ; осуществляет отображение (mapping) множества ключей
- 42. Методы Map public void put(Object key, Object value) - добавляет новую пару public Object get(Object key)
- 43. Классы HashMap и LinkedHashMap HashMap – расширяет AbstractMap , используя хэш-таблицу, в которой ключи отсортированы относительно
- 44. Пример с использованием HashMap Map map = new HashMap (); // Заполнить его чем-нибудь map.put("one", "111");
- 45. Внутренний интерфейс Map.Entry Интерфейс Map.Entry позволяет работать с объектом, который представляет собой пару Каждый элемент ассоциативного
- 46. Внутренний интерфейс Map.Entry Интерфейс cодержит такие методы как: boolean equals(Object o) - проверяет эквивалентность двух пар
- 48. Скачать презентацию