LinkedHashMap в Java

LinkedHashMap

Реализует Map интерфейс, расширяет HashMap, допускает нулевые значения и нулевые ключи, не синхронизирован.

LinkedHashMap реализован как двунаправленный список.

LinkedHashMap содержит пары ключ-значение. Порядок, в котором хранятся элементы в LinkedHashMap, определяется порядком установки их в LinkedHashMap (insertion-order).

Производительность LinkedHashMap на основных операциях (add, contains, remove) слегка ниже, чем у HashMap, из-за необходимости поддерживать двунаправленный список, но время обхода LinkedHashMap пропорционально его размеру (size), т.е. количеству элементов в нём, тогда как время обхода HashMap пропорционально его ёмкости (capacity).

Создать объект LinkedHashMap:

LinkedHashMap< Integer, String > hm;
hm = new LinkedHashMap< Integer, String >();

создан объект LinkedHashMap, ключ типа Integer, значение типа String.

Создать синхронизированный объект LinkedHashMap:

Map lhm = Collections.synchronizedMap(new LinkedHashMap());

Добавить объект в LinkedHashMap:

hm.put(++inn, new String("Str") + inn.toString());

Установить строку «256» в пару с ключом 3:

String oldValue = hm.put(new Integer(3), new String("256"));

метод вернёт старое значение из пары с ключом 3. Если ключа 3 нет, будет создана новая пара: 3 - «256».

Получить размер, т.е. количество пар:

Integer size = hm.size();

Получить значение из пары с ключом 3:

String get = hm.get(new Integer(3));

Проверить есть ли ключ 2:

hm.containsKey(new Integer(2));

Проверить есть ли значение «Str2»:

hm.containsValue(new String("Str2"));

Удалить элемент с ключом, равным ht.size():

String get = hm.remove(hm.size());

Возвращает значение пары.

Удалить все элементы:

hm.clear();

Получить коллекцию всех значений объекта LinkedHashMap:

Collection < String> vol = hm.values();

Получить множество всех ключей объекта LinkedHashMap:

Set < Integer> vol = hm.keySet();

Получить множество всех пар объекта LinkedHashMap:

Set<?> vol = hm.entrySet();

Выясняем, не пуст ли объект LinkedHashMap, функция возвращает тип boolean:

hm.isEmpty();

Пара с ключом null:

hm.put(null, new String("Str") + inn.toString());

Пара со значением null:

hm.put(inn++, null);

Пара с ключом и значением null:

hm.put(null, null);

Итератор:

Получаем LinkedHashMap, Java

этот результат.