Руководство по Java Core. Коллекции. TreeMap.

Класс TreeMap является реализацией интерфейса Map, которая использует дерево для хранения данных. Это обеспечивает более высокую скорость получения данных.

TreeMap гарантирует, что элементы будут отсортированы по возрастанию.

С конструкторами и мтеодами этого класса вы можете ознакомиться в официальной документации.

Для понимания того, как TreeMap работает на практике, рассмотрим пример простого прилодения с его использованием.

Пример:

Класс TreeMapDemo


import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

public class TreeMapDemo {
    public static void main(String[] args) {
        TreeMap treeMap = new TreeMap<>();

        treeMap.put(2, "Proselyte");
        treeMap.put(1, "AsyaSmile");
        treeMap.put(3, "Peter");
        treeMap.put(5, "Ivan");
        treeMap.put(4, "Konstantin");

        System.out.println("Initial TreeMap content:");

        Set set = treeMap.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 = treeMap.get(2);
        name += " Changed";

        treeMap.put(2, name);

        System.out.println("Final TreeMap content:");

        set = treeMap.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 Messages*/

Initial TreeMap content:
ID: 1, Name: AsyaSmile
ID: 2, Name: Proselyte
ID: 3, Name: Peter
ID: 4, Name: Konstantin
ID: 5, Name: Ivan

========================

Modifying Proselyte...
Final TreeMap content:
ID: 1, Name: AsyaSmile
ID: 2, Name: Proselyte Changed
ID: 3, Name: Peter
ID: 4, Name: Konstantin
ID: 5, Name: Ivan

В этом разделе мы изучили основы класса TreeMap и рассмотрели пример простого приложения с его использованием.