English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этом руководстве мы будем изучать интерфейс Java SortedMap и его методы.
Интерфейс SortedMap в Java Collection Framework позволяет сортировать ключи, хранящиеся в мапе.
Он наследуетИнтерфейс Map.
Потому что SortedMap является интерфейсом,所以我们不能从它创建对象。
Чтобы использовать функции интерфейса SortedMap, нам нужно использовать класс TreeMap, реализующий его.
Чтобы использовать SortedMap,我们必须 сначала импортировать пакет java.util.SortedMap. После импорта пакета можно создать отсортированную карту следующим образом.
// Реализация SortedMap предоставляется классом TreeMap SortedMap<Key, Value> numbers = new TreeMap<>();
мы создали отсортированную карту numbers с помощью класса TreeMap.
Здесь,
Key - уникальный идентификатор, используемый для связи каждого элемента (значения) в карте
Value - элемент, связанный с ключом в карте
Здесь мы не используем никаких параметров для создания отсортированной карты. Поэтому карта будет автоматически отсортирована (в порядке возрастания).
Интерфейс SortedMap содержит все методы интерфейса Map. Это потому, что Map является супер-интерфейсом SortedMap.
Кроме всех этих методов, здесь есть и методы, специфичные для интерфейса SortedMap.
comparator() - возвращать сравнитель, который можно использовать для сортировки ключей в карте
firstKey() - возвращать первый ключ уже отсортированной карты
lastKey() - возвращать последний ключ уже отсортированной карты
headMap(key) - возвращать все элементы карты с ключами, которые меньше заданного ключа key
tailMap(key) - возвращать все элементы карты с ключами, которые больше или равны заданному ключу key
subMap(key1, key2) - возвращать все элементы карты с ключами между key1 и key2 (включая key1)
import java.util.SortedMap; import java.util.TreeMap; class Main { public static void main(String[] args) { //使用TreeMap创建SortedMap SortedMap<String, Integer> numbers = new TreeMap<>(); //插入映射元素 numbers.put("Two", 2); numbers.put("One", 1); System.out.println("SortedMap: " + numbers); //Доступ к первому ключу карты System.out.println("Первый ключ: " + numbers.firstKey()); //Доступ к последнему ключу карты System.out.println("Последний ключ: " + numbers.lastKey()); //Удалить элемент из карты int value = numbers.remove("One"); System.out.println("Удалить значение: " + value); } }
Результат вывода
SortedMap: {One=1, Two=2} Первый ключ: One Последний ключ: Two Удалить значение: 1
Чтобы узнать больше о TreeMap, пожалуйста, посетитеJava TreeMap.
Поскольку мы знаем интерфейс SortedMap, мы будем использовать класс TreeMap для изучения его реализации.