Скачать 265.36 Kb.
|
Класс PropertiesКласс Properties расширяет класс Hashtable. Он предназначен в основном для ввода и вывода пар свойств системы и их значений. Пары хранятся в виде строк типа string. В классе Properties два конструктора: Properties () — создает пустой объект; Properties (Properties default) — создает объект с заданными парами свойств default . Кроме унаследованных от класса Hashtable методов в классе Properties есть еще следующие методы. Два метода, возвращающих значение ключа-строки в виде строки: string getProperty (String key) — возвращает значение по ключу key; String getProperty(String.key, String defaultValue) — возвращает значение по ключу key ; если такого ключа нет, возвращается defaultValue . Метод setProperty(String key, String value) добавляет новую пару, если ключа key нет, и меняет значение, если ключ key есть. Метод load(InputStream in ) загружает свойства из входного потока in . Методы list(PrintStream out) И list (PrintWriter out) выводят свойства в выходной поток out. Метод store(OutputStream out, String header) выводит свойства в выходной поток out с заголовком header . Пример 4. Вывод системных свойств class Prop{ public static void main(String[] args){ System.getProperties().list(System.out); } } Рис. 1. Системные свойства Примеры классов Vector, Stack, Hashtable, Properties показывают удобство классов-коллекций. Поэтому в Java 2 разработана целая иерархия коллекций. Она приведена на рис. 2. Примером реализации интерфейса List может служить класс Vector , примером реализации интерфейса мар — класс Hashtable . В таблице 1 приведены классы коллекций, построенные на основе интерфейсов. Рис. 2. Иерархия интерфейсов и классов-коллекций в Java. Табл. 1. Реализация коллекций
Интерфейс CollectionИнтерфейс Collection из пакета java.util описывает общие свойства коллекций List и Set. Он содержит методы добавления и удаления элементов, проверки и преобразования элементов: boolean add (Object obj) — добавляет элемент obj в конец коллекции; возвращает false , если такой элемент в коллекции уже есть, а коллекция не допускает повторяющиеся элементы; возвращает true , если добавление прошло удачно; boolean addAll (Collection coll) — добавляет все элементы коллекции coll в конец данной коллекции; void clear ( ) — удаляет все элементы коллекции; boolean contains (Object obj) — проверяет наличие элемента obj в коллекции; boolean containsAll (Collection coll ) — проверяет наличие всех элементов коллекции coll в данной коллекции; boolean isEmpty() — проверяет, пуста ли коллекция; Iterator iterator () — возвращает итератор данной коллекции; boolean remove (object obj) — удаляет указанный элемент из коллекции; возвращает false , если элемент не найден, true , если удаление прошло успешно; boolean removeAll (Collection coll) — удаляет элементы указанной коллекции, лежащие в данной коллекции; boolean retainAll (Collection coll ) — удаляет все элементы данной коллекции, кроме элементов коллекции coll ; int size () — возвращает количество элементов в коллекции; Object [] toArray () — возвращает все элементы коллекции в виде массива; Object[] toArray(Object[] a) — записывает все элементы коллекции в массив а, если в нем достаточно места. |