30.01. Java – Фреймворк коллекций
Методы Помимо методов, определённых Hashtable, Properties определяет следующие методы:
Пример Следующая программа показывает несколько методов, поддерживаемых этой структурой данных: import java. util. *; public class PropDemo { public static void main(String args[]) { Properties capitals = new Properties(); Set states; String str; capitals. put(" Иллинойс", " Спрингфилд" ); capitals. put(" Миссури", " Джефферсон-Сити" ); capitals. put(" Вашингтона", " Олимпия" ); capitals. put(" Калифорнии", " Сакраменто" ); capitals. put(" Индианы", " Индианаполис" ); // Показывает все штаты и столицы в хэш-таблицы. states = capitals. keySet(); // Получить набор ключей Iterator itr = states. iterator(); while(itr. hasNext()) { str = (String) itr. next(); System. out. println(" Столицей " + str + " является " + capitals. getProperty(str) + ". " ); } System. out. println(); // При нахождении штата вне списка –– указать значение по умолчания. str = capitals. getProperty(" Флорида", " Не Найдена" ); System. out. println(" Столица Флориды " + str + ". " ); }}Получим следующее:
30. 01. Java – Фреймворк коллекций Вплоть до Java 2, Java предоставляла особые классы, такие как Dictionary, Vector, Stack, и Properties для хранения и управления группами объектов. Хоть эти классы были полезными, им не хватало центральной, объединяющей тематики. Именно поэтому то, как вы использовали Vector отличается от того, как вы использовали Properties. Структура коллекций в Java была создана для того чтобы удовлетворять таким целям, как: · Фреймворк должен быть высокопроизводительным. Реализации фундаментальных коллекций (динамические массивы, связанные списки, деревья и хэш-таблицы) должны быть высокоэффективными. · Фреймворк должен позволять разным типам коллекций работать аналогичным образом и с высокой степенью совместимости. · Фреймворк должен уметь расширяться и/или легко адаптировать коллекцию С этой целью вся структура коллекций разработана вокруг набора стандартных интерфейсов. Несколько стандартных реализаций типа LinkedList, HashSet, и TreeSet из этих интерфейсов предоставляются таким образом, что вы можете их использовать «как есть» или можете реализовать свою собственную коллекцию по вашему выбору. Фреймворк коллекций – это объединённая архитектура для представления и управления коллекциями. Все структуры коллекций содержат в себе следующее:
· Интерфейсы – это абстрактные типы данных, которые представляют коллекции. Интерфейсы позволяют управлять коллекциями вне зависимости от деталей их представления. В объектно-ориентированных языках интерфейсы обычно формируют иерархию. · Реализации, т. e. классы – Это конкретные реализации интерфейсов коллекций. По сути, они являются структурными данных, которые можно многократно использовать. · Алгоритмы – это методы, которые выполняют полезные вычисления с объектами, которые реализуют интерфейсы коллекций, например поиск и сортировку. Алгоритмы считаются полиморфными, то есть один и тот же метод может быть использован во множестве различных реализаций соответствующего интерфейса коллекций. Помимо коллекций, фреймворк определяет некоторые интерфейсы и классы карт. Карты хранят пары ключ/значение. Хоть карты не являются коллекциями в обычном их понимании, но они полностью интегрированы с коллекциями.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|