Программирование на Java




Заключение


В этой лекции были рассмотрены вспомогательные классы пакета java.util. Как можно было заметить, они относятся к самым разным задачам, а потому редкая программа обходится без использования хотя бы одного класса этого пакета.

Напомним кратко все основные классы и их особенности:

  • Для работы с датой и временем должны использоваться классы Date, Calendar. Класс Calendar абстрактный, существует конкретная реализация этого класса GregorianCalendar.
  • Интерфейс Observer и класс Observable реализуют парадигму MVC и предназначены для уведомления одного объекта об изменении состояния другого.
  • Коллекции (Collections) не накладывают ограничений на порядок следования и дублирование элементов.
  • Списки (List) поддерживают порядок элементов (управляются либо самими данными, либо внешними алгоритмами).
  • Наборы (Set) не допускают дублированных элементов.
  • Карты (Maps) используют уникальные ключи для поиска содержимого.
  • Применение массивов делает добавление, удаление и увеличение количества элементов затруднительным.
  • Использование связанных списков (LinkedList) обеспечивает хорошую производительность при вставке, удалении элементов, но снижает скорость индексированного доступа к ним.
  • Использование деревьев (Tree) облегчает вставку, удаление и увеличение размера хранилища, снижает скорость индексированного доступа, но увеличивает скорость поиска.
  • Применение хэширования облегчает вставку, удаление и увеличение размера хранилища, снижает скорость индексированного доступа, но увеличивает скорость поиска. Однако хэширование требует наличия уникальных ключей для запоминания элементов данных.
  • Класс Properties удобен для хранения наборов параметров в виде пар ключ/значение. Параметры могут сохраняться в потоки (файлы) и загружаться из них.
  • Реализация классом интерфейса Comparator позволяет сравнивать экземпляры класса друг с другом и, соответственно, сортировать их, например, в коллекциях.
  • Arrays является классом-утилитой и обеспечивает набор методов, реализующих различные приемы работы с массивами. Не имеет конструктора.




  • Содержание  Назад  Вперед