Сортировка Map по ключам в Java — TreeMap и Stream.sorted
Чтобы понять этот пример, нужно знать следующие темы:
Интерфейс Map в Java
HashMap в Java
TreeMap в Java
Пример: Сортировка map по ключам с помощью TreeMap
import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;
class Main {
public static void main(String[] args) {
// создаём hashmap
Map<String, String> languages = new HashMap<>();
languages.put("pos3", "JS");
languages.put("pos1", "Java");
languages.put("pos2", "Python");
System.out.println("Map: " + languages);
// создаём tree map из map
TreeMap<String, String> sortedNumbers = new TreeMap<>(languages);
System.out.println("Map with sorted Key" + sortedNumbers);
}
}
Вывод:
Map: {pos1=Java, pos2=Python, pos3=JS}
Map with sorted Key{pos1=Java, pos2=Python, pos3=JS}
В примере выше мы создали map с именем languages, используя HashMap. Здесь map не отсортирована.
Чтобы отсортировать map, мы создали treemap из map. Теперь map отсортирована по ключам.