Класс LinkedHashMap хранит элементы типа “ключ – значение” в том порядке, в котором они были добавлены. Это означает, что когда мы захотим вывести содержимое структуры данных мы получим их не упорядоченными по возрастанию, а в порядке добавления.
С конструкторами и методами этого класса вы можете ознакомиться в официальной документации.
Для понимания того, как это работает на практике, рассмотрим пример простого приложения.
Пример:
Класс LinkedHashMapDemo
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
public class LinkedHashMapDemo {
public static void main(String[] args) {
LinkedHashMap linkedHashMap =
new LinkedHashMap<>();
System.out.println("Adding elements into linkedHashMap...");
linkedHashMap.put(3, "Proselyte");
linkedHashMap.put(2, "AsyaSmile");
linkedHashMap.put(5, "Konstantin");
linkedHashMap.put(1, "Ivan");
linkedHashMap.put(4, "Peter");
System.out.println("LinkedHashMap initial content:");
Set set = linkedHashMap.entrySet();
for (Object element : set) {
Map.Entry mapEntry = (Map.Entry) element;
System.out.println("ID: " + mapEntry.getKey() + ", Name: " + mapEntry.getValue());
}
System.out.println("\n========================\n");
System.out.println("Modifying Proselyte...");
String name = linkedHashMap.get(3);
name += " Changed";
linkedHashMap.put(3, name);
System.out.println("LinkedHashMap final content:");
set = linkedHashMap.entrySet();
for (Object element : set) {
Map.Entry mapEntry = (Map.Entry) element;
System.out.println("ID: " + mapEntry.getKey() + ", Name: " + mapEntry.getValue());
}
System.out.println("\n========================\n");
}
}
В результате работы программы мы получим следующий результат:
/*Some System Elements*/
Adding elements into linkedHashMap...
LinkedHashMap initial content:
ID: 3, Name: Proselyte
ID: 2, Name: AsyaSmile
ID: 5, Name: Konstantin
ID: 1, Name: Ivan
ID: 4, Name: Peter
========================
Modifying Proselyte...
LinkedHashMap final content:
ID: 3, Name: Proselyte Changed
ID: 2, Name: AsyaSmile
ID: 5, Name: Konstantin
ID: 1, Name: Ivan
ID: 4, Name: Peter
========================
В этом разделе мы изучили основы класса LinkedHashMap и рассмотрели пример простого приложения с его использованием.