Учебное пособие: Наследование и классы-коллекции

Для заполнения объекта класса Hashtable используются два метода:

Object put(Object key, Object value) — добавляет пару "key — value", если ключа key не было в таблице, и меняет значение value ключа key, если он уже есть в таблице. Возвращает старое значение ключа или null, если его не было. Если хотя бы один параметр равен null, возникает исключительная ситуация;

void putAll(Map f) — добавляет все элементы отображения f. В объектах-ключах key должны быть реализованы методы hashCode() и equals ().

Как получить значение по ключу

Метод get (Object key) возвращает значение элемента с ключом key в виде объекта класса Object. Для дальнейшей работы его следует преобразовать к конкретному типу.

Как узнать наличие ключа или значения

Логический метод containsKey(Object key) возвращает true, если в таблице есть ключ key.

Логический метод containsvalue (Object value) или старый метод contains (Object value) возвращают true, если в таблице есть ключи со значением value.

Логический метод isEmpty() возвращает true, если в таблице нет элементов.

Как получить все элементы таблицы

Метод values()представляет все значения value таблицы в виде интерфейса Collection. Все модификации в объекте collection изменяют таблицу, и наоборот.

Метод keyset() предоставляет все ключи key таблицы в виде интерфейса set. Все изменения в объекте set корректируют таблицу, и наоборот.

Метод entrySet() представляет все пары "key — value" таблицы в виде интерфейса Set. Все модификации в объекте Set изменяют таблицу, и наоборот.

Метод toString() возвращает строку, содержащую все пары.

Как удалить элементы

Метод remove (Object key) удаляет пару с ключом key, возвращая значение этого ключа, если оно есть, и null, если пара с ключом key не найдена.

Метод clear() удаляет все элементы, очищая таблицу.

Пример программы «Телефонный справочник».

importjava.util.*;

class PhoneBook{

public static void main(String[] args){

Hashtable yp = new Hashtable();

String name = null;

yp.put("John", "123-45-67");

yp.put ("Lemon", "567-34-12");

yp.put("Bill", "342-65-87");

yp.put("Gates", "423-83-49");

yp.put("Batman", "532-25-08");

try{

К-во Просмотров: 546
Бесплатно скачать Учебное пособие: Наследование и классы-коллекции