Java — Структуры данных
Структуры данных, предоставляемые пакетом утилит Java, очень мощны и выполняют широкий спектр функций. Эти структуры данных состоят из следующего интерфейса и классов —
- Перечисление
- Битовый набор
- Вектор
- Стопка
- Словарь
- Хеш-таблица
- Свойства
Все эти классы теперь унаследованы, а в Java-2 появилась новая структура под названием Collections Framework, которая обсуждается в следующей главе. −
Перечисление
Интерфейс Enumeration сам по себе не является структурой данных, но он очень важен в контексте других структур данных. Интерфейс Enumeration определяет средство для извлечения последовательных элементов из структуры данных.
Например, Enumeration определяет метод nextElement, который используется для получения следующего элемента в структуре данных, содержащей несколько элементов.
Чтобы получить более подробную информацию об этом интерфейсе, проверьте Перечисление.
Битовый набор
Класс BitSet реализует группу битов или флагов, которые можно устанавливать и сбрасывать по отдельности.
Этот класс очень полезен в тех случаях, когда вам нужно не отставать от набора логических значений; вы просто назначаете бит каждому значению и устанавливаете или очищаете его по мере необходимости.
Дополнительные сведения об этом классе см. в The BitSet.
Вектор
Класс Vector подобен традиционному массиву Java, за исключением того, что он может увеличиваться по мере необходимости для размещения новых элементов.
Как и массив, к элементам объекта Vector можно получить доступ через индекс в векторе.
Преимущество использования класса Vector в том, что вам не нужно беспокоиться о том, чтобы установить для него определенный размер при создании; при необходимости он автоматически сжимается и увеличивается.
Дополнительные сведения об этом классе см. в разделе The Vector.
Стек
Класс Stack реализует стек элементов в порядке поступления (LIFO).
Вы можете думать о стеке буквально как о вертикальном стеке объектов; когда вы добавляете новый элемент, он размещается поверх остальных.
Когда вы вытаскиваете элемент из стека, он оказывается сверху. Другими словами, последний элемент, добавленный в стек, удаляется первым.
Дополнительные сведения об этом классе см. в The Stack.
Словарь
Класс Dictionary — это абстрактный класс, определяющий структуру данных для сопоставления ключей со значениями.
Это полезно в тех случаях, когда вы хотите иметь доступ к данным с помощью определенного ключа, а не целочисленного индекса.
Поскольку класс Dictionary является абстрактным, он предоставляет только структуру для структуры данных с сопоставлением ключей, а не конкретную реализацию.
Дополнительные сведения об этом классе см. в Словаре.
Хеш-таблица
Класс Hashtable предоставляет средства для организации данных на основе определенной пользователем ключевой структуры.
Например, в хеш-таблице списка адресов вы можете хранить и сортировать данные на основе ключа, такого как почтовый индекс, а не на основе имени человека.
Конкретное значение ключей в отношении хеш-таблиц полностью зависит от использования хеш-таблицы и содержащихся в ней данных.
Подробнее об этом классе см. в The Hashtable.
Свойства
Properties является подклассом Hashtable. Он используется для поддержки списков значений, в которых ключ является строкой, а значение также является строкой.
Класс Properties используется многими другими классами Java. Например, это тип объекта, возвращаемый функцией System.getProperties() при получении значений среды.
Дополнительные сведения об этом классе см. в свойствах.
java