Класс TreeMap<K,V>
- java.lang.Object
-
- java.util.AbstractMap<K,V>
-
- java.util.TreeMap<K,V>
- Type Parameters:
-
K- тип ключей, поддерживаемых этой картой -
V- тип сопоставленных значений
- Все реализованные интерфейсы:
-
Serializable,Cloneable,Map<K,V>,NavigableMap<K,V>,SortedMap<K,V>
public class TreeMap<K,V> extends AbstractMap<K,V> implements NavigableMap<K,V>, Cloneable, Serializable
Реализация NavigableMap на основе красно-черного дерева. Карта отсортирована в соответствии с естественным порядком своих ключей или с помощью Comparator, предоставленного во время создания карты, в зависимости от используемого конструктора.
Эта реализация гарантирует затраты времени log(n) для операций containsKey, get, put и remove. Алгоритмы являются адаптациями алгоритмов из книги Кормена, Лейзерсона и Ривеста «Введение в алгоритмы».
Обратите внимание, что порядок, поддерживаемый картой дерева, как и любой отсортированной картой, и независимо от того, предоставлен ли явный компаратор, должен быть совместимым с equals, если эта отсортированная карта должна правильно реализовать интерфейс Map. (См. Comparable или Comparator для точного определения совместимости с equals.) Это связано с тем, что интерфейс Map определен в терминах операции equals, но отсортированная карта выполняет все сравнения ключей, используя свой метод
compareTo (или compare), поэтому два ключа, считающиеся равными этим методом, с точки зрения отсортированной карты, равны. Поведение отсортированной карты определено даже если её порядок несовместим с equals; оно просто не подчиняется общему контракту интерфейса Map.
Обратите внимание, что эта реализация не синхронизирована. Если несколько потоков одновременно обращаются к карте, и по крайней мере один из потоков структурно изменяет карту, она должна быть синхронизирована внешним образом. (Структурное изменение — это любая операция, которая добавляет или удаляет одну или несколько сопоставлений; простое изменение значения, связанного с существующим ключом, не является структурным изменением.) Обычно это достигается путём синхронизации на некотором объекте, естественным образом encapsulating карту. Если такого объекта нет, карта должна быть «упакована» с помощью метода Collections.synchronizedSortedMap. Это лучше всего сделать на этапе создания, чтобы предотвратить случайный несинхронизированный доступ к карте:
SortedMap m = Collections.synchronizedSortedMap(new TreeMap(...));
Итераторы, возвращаемые методом iterator коллекций, возвращаемых всеми методами «представления коллекций» этого класса, являются быстродействующими: если карта структурно изменяется в любое время после создания итератора, каким-либо способом, кроме метода самого итератора remove, итератор выбросит исключение ConcurrentModificationException. Таким образом, при одновременном изменении итератор быстро и чисто завершается, а не рискует произвольным, непредсказуемым поведением в неопределенное время в будущем.
Обратите внимание, что поведение быстродействующего итератора не может быть гарантировано, поскольку, как правило, невозможно дать какие-либо жёсткие гарантии в присутствии несинхронизированных одновременных модификаций. Быстродействующие итераторы выбрасывают ConcurrentModificationException в режиме наилучшего результата. Поэтому неправильно писать программу, зависящую от этого исключения для её корректности: поведение быстродействующих итераторов следует использовать только для обнаружения ошибок.
Все пары Map.Entry , возвращаемые методами этого класса и его представлений, представляют собой снимки сопоставлений на момент их создания. Они не поддерживают метод Entry.setValue. (Однако, изменение сопоставлений в связанной карте возможно с использованием put.)
Этот класс является членом Java Collections Framework.
- Since:
- 1.2
- См. также:
-
Map,HashMap,Hashtable,Comparable,Comparator,Collection, Сериализованная форма
Вложенные классы
Вложенные классы/интерфейсы, объявленные в классе java.util.AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V> Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
TreeMap() | Создаёт новую, пустую карту дерева, используя естественный порядок своих ключей. |
TreeMap(Comparator<? super K> comparator) | Создаёт новую, пустую карту дерева, упорядоченную в соответствии с заданным компаратором. |
TreeMap(Map<? extends K,? extends V> m) | Создаёт новую карту дерева, содержащую те же сопоставления, что и заданная карта, упорядоченную в соответствии с естественным порядком своих ключей. |
TreeMap(SortedMap<K,? extends V> m) | Создаёт новую карту дерева, содержащую те же сопоставления и использующую тот же порядок, что и указанная отсортированная карта. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
Map.Entry<K,V> | ceilingEntry(K key) | Возвращает сопоставление ключ-значение, связанное с наименьшим ключом, большим или равным заданному ключу, или |
K | ceilingKey(K key) | Возвращает наименьший ключ, больший или равный заданному ключу, или |
void | clear() | Удаляет все сопоставления из этой карты. |
Object | clone() | Возвращает неглубокую копию этого экземпляра |
boolean | containsKey(Object key) | Возвращает |
boolean | containsValue(Object value) | Возвращает |
NavigableSet<K> | descendingKeySet() | Возвращает представление |
NavigableMap<K,V> | descendingMap() | Возвращает представление сопоставлений, содержащихся в этой карте, в обратном порядке. |
Set<Map.Entry<K,V>> | entrySet() | Возвращает представление |
Map.Entry<K,V> | firstEntry() | Возвращает сопоставление ключ-значение, связанное с наименьшим ключом в этой карте, или |
K | firstKey() | Возвращает первый (наименьший) ключ, в данный момент находящийся в этой карте. |
Map.Entry<K,V> | floorEntry(K key) | Возвращает сопоставление ключ-значение, связанное с наибольшим ключом, меньшим или равным заданному ключу, или |
K | floorKey(K key) | Возвращает наибольший ключ, меньший или равный заданному ключу, или |
V | get(Object key) | Возвращает значение, которому сопоставлен указанный ключ, или |
SortedMap<K,V> | headMap(K toKey) | Возвращает представление части этой карты, ключи которой строго меньше |
NavigableMap<K,V> | headMap(K toKey,
boolean inclusive) | Возвращает представление части этой карты, ключи которой меньше (или равны, если |
Map.Entry<K,V> | higherEntry(K key) | Возвращает сопоставление ключ-значение, связанное с наименьшим ключом, строго большим заданного ключа, или |
K | higherKey(K key) | Возвращает наименьший ключ, строго больший заданного ключа, или |
Set<K> | keySet() | Возвращает представление |
Map.Entry<K,V> | lastEntry() | Возвращает сопоставление ключ-значение, связанное с наибольшим ключом в этой карте, или |
K | lastKey() | Возвращает последний (наибольший) ключ, в данный момент находящийся в этой карте. |
Map.Entry<K,V> | lowerEntry(K key) | Возвращает сопоставление ключ-значение, связанное с наибольшим ключом, строго меньшим заданного ключа, или |
K | lowerKey(K key) | Возвращает наибольший ключ, строго меньший заданного ключа, или |
NavigableSet<K> | navigableKeySet() | Возвращает представление |
Map.Entry<K,V> | pollFirstEntry() | Удаляет и возвращает сопоставление ключ-значение, связанное с наименьшим ключом в этой карте, или |
Map.Entry<K,V> | pollLastEntry() | Удаляет и возвращает сопоставление ключ-значение, связанное с наибольшим ключом в этой карте, или |
V | put(K key,
V value) | Связывает указанное значение с указанным ключом в этой карте. |
void | putAll(Map<? extends K,? extends V> map) | Копирует все сопоставления из указанной карты в эту карту. |
V | remove(Object key) | Удаляет сопоставление для этого ключа из этого TreeMap, если оно присутствует. |
int | size() | Возвращает количество сопоставлений ключ-значение в этой карте. |
NavigableMap<K,V> | subMap(K fromKey,
boolean fromInclusive,
K toKey,
boolean toInclusive) | Возвращает представление части этой карты, ключи которой находятся в диапазоне от |
SortedMap<K,V> | subMap(K fromKey,
K toKey) | Возвращает представление части этой карты, ключи которой находятся в диапазоне от |
SortedMap<K,V> | tailMap(K fromKey) | Возвращает представление части этой карты, ключи которой больше или равны |
NavigableMap<K,V> | tailMap(K fromKey,
boolean inclusive) | Возвращает представление части этой карты, ключи которой больше (или равны, если |
Collection<V> | values() | Возвращает представление |
Методы, объявленные в классе java.util.AbstractMap
equals, hashCode, isEmpty, toString Методы, объявленные в классе java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait Методы, объявленные в интерфейсе java.util.Map
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, isEmpty, merge, putIfAbsent, remove, replace, replace, replaceAll Методы, объявленные в интерфейсе java.util.SortedMap
comparator Конструкторы
TreeMap
public TreeMap()
Создаёт новую пустую карту TreeMap, использующую естественный порядок своих ключей. Все ключи, вставленные в карту, должны реализовывать интерфейс Comparable. Кроме того, все такие ключи должны быть взаимосопоставимы: k1.compareTo(k2) не должен вызывать ClassCastException для любых ключей k1 и k2 в карте. Если пользователь пытается поместить ключ в карту, который нарушает это ограничение (например, пользователь пытается поместить строковый ключ в карту, ключами которой являются целые числа), то вызов put(Object key, Object value) выбросит исключение ClassCastException.
TreeMap
public TreeMap(Comparator<? super K> comparator)
Создаёт новую пустую карту TreeMap, упорядоченную в соответствии с заданным компаратором. Все ключи, вставленные в карту, должны быть взаимосопоставимы с помощью заданного компаратора: comparator.compare(k1,
k2) не должен вызывать ClassCastException для любых ключей k1 и k2 в карте. Если пользователь пытается поместить ключ в карту, который нарушает это ограничение, вызов put(Object
key, Object value) выбросит исключение ClassCastException.
- Параметры:
-
comparator- компаратор, который будет использоваться для упорядочения этой карты. Еслиnull, будет использован естественный порядок ключей.
TreeMap
public TreeMap(Map<? extends K,? extends V> m)
Создаёт новую карту TreeMap, содержащую те же сопоставления, что и заданная карта, упорядоченную в соответствии с естественным порядком своих ключей. Все ключи, вставленные в новую карту, должны реализовывать интерфейс Comparable. Кроме того, все такие ключи должны быть взаимосопоставимы: k1.compareTo(k2) не должен вызывать ClassCastException для любых ключей k1 и k2 в карте. Этот метод выполняется за время n*log(n).
- Параметры:
-
m- карта, сопоставления которой должны быть помещены в эту карту - Исключения:
-
ClassCastException- если ключи в m не являютсяComparable, или не являются взаимно сравнимыми -
NullPointerException- если указанная карта равна null
TreeMap
public TreeMap(SortedMap<K,? extends V> m)
Создаёт новую карту TreeMap, содержащую те же сопоставления и использующую тот же порядок, что и указанная упорядоченная карта. Этот метод выполняется за линейное время.
- Параметры:
-
m- упорядоченная карта, сопоставления которой должны быть помещены в эту карту, и компаратор которой должен быть использован для сортировки этой карты - Исключения:
-
NullPointerException- если указанная карта равна null
Методы
size
public int size()
Возвращает количество пар «ключ-значение» в этом отображении.
- Указано в:
-
sizeв интерфейсеMap<K,V> - Переопределяет:
-
sizeв классеAbstractMap<K,V> - Возвращает:
- количество пар «ключ-значение» в этом отображении
containsKey
public boolean containsKey(Object key)
Возвращает true если это отображение содержит сопоставление для указанного ключа.
- Указано в:
-
containsKeyв интерфейсеMap<K,V> - Переопределяет:
-
containsKeyв классеAbstractMap<K,V> - Параметры:
-
key- ключ, наличие которого в этом отображении должно быть проверено - Возвращает:
-
trueесли это отображение содержит сопоставление для указанного ключа - Исключения:
-
ClassCastException- если указанный ключ не может быть сравнен с ключами, которые в данный момент находятся в отображении -
NullPointerException- если указанный ключ равен null, и это отображение использует естественный порядок, или его компаратор не допускает ключи со значением null
containsValue
public boolean containsValue(Object value)
Возвращает true если это отображение сопоставляет один или несколько ключей с указанным значением. Более формально, возвращает true тогда и только тогда, когда это отображение содержит хотя бы одно сопоставление со значением v такое, что (value==null ? v==null : value.equals(v)). Эта операция, вероятно, потребует времени, линейно зависящего от размера отображения для большинства реализаций.
- Указано в:
-
containsValueв интерфейсеMap<K,V> - Переопределяет:
-
containsValueв классеAbstractMap<K,V> - Параметры:
-
value- значение, наличие которого в этом отображении должно быть проверено - Возвращает:
-
trueесли существует сопоставление сvalue;falseв противном случае - С версии:
- 1.2
get
public V get(Object key)
Возвращает значение, с которым сопоставлен указанный ключ, или null если это отображение не содержит сопоставления для ключа.
Более формально, если это отображение содержит сопоставление от ключа k к значению v такое, что key сравнивается как равное k в соответствии с порядком отображения, то этот метод возвращает v; в противном случае он возвращает null. (Может быть не более одного такого сопоставления.)
Возвращаемое значение null не обязательно указывает, что отображение не содержит сопоставления для ключа; также возможно, что отображение явно сопоставляет ключ с null. Операция containsKey может использоваться для различения этих двух случаев.
- Указано в:
-
getв интерфейсеMap<K,V> - Переопределяет:
-
getв классеAbstractMap<K,V> - Параметры:
-
key- ключ, связанное с которым значение должно быть возвращено - Возвращает:
- значение, с которым сопоставлен указанный ключ, или
nullесли это отображение не содержит сопоставления для ключа - Исключения:
-
ClassCastException- если указанный ключ не может быть сравнен с ключами, которые в данный момент находятся в отображении -
NullPointerException- если указанный ключ равен null, и это отображение использует естественный порядок, или его компаратор не допускает ключи со значением null
firstKey
public K firstKey()
Описание скопировано из интерфейса: SortedMap
Возвращает первый (наименьший) ключ, который в данный момент находится в этом отображении.
- Указано в:
-
firstKeyв интерфейсеSortedMap<K,V> - Возвращает:
- первый (наименьший) ключ, который в данный момент находится в этом отображении
- Исключения:
-
NoSuchElementException- если это отображение пустое
lastKey
public K lastKey()
Описание скопировано из интерфейса: SortedMap
Возвращает последний (наибольший) ключ, который в данный момент находится в этом отображении.
- Указано в:
-
lastKeyв интерфейсеSortedMap<K,V> - Возвращает:
- последний (наибольший) ключ, который в данный момент находится в этом отображении
- Исключения:
-
NoSuchElementException- если это отображение пустое
putAll
public void putAll(Map<? extends K,? extends V> map)
Копирует все сопоставления из указанного отображения в это отображение. Эти сопоставления заменяют любые сопоставления, которые это отображение имело для любых ключей, которые в данный момент находятся в указанном отображении.
- Указано в:
-
putAllв интерфейсеMap<K,V> - Переопределяет:
-
putAllв классеAbstractMap<K,V> - Параметры:
-
map- сопоставления, которые должны быть сохранены в этом отображении - Исключения:
-
ClassCastException- если класс ключа или значения в указанном отображении мешает ему быть сохраненным в этом отображении -
NullPointerException- если указанное отображение равно null или указанное отображение содержит ключ со значением null, и это отображение не допускает ключи со значением null
put
public V put(K key,
V value) Связывает указанное значение с указанным ключом в этом отображении. Если отображение ранее содержало сопоставление для ключа, старое значение заменяется.
- Указано в:
-
putв интерфейсеMap<K,V> - Переопределяет:
-
putв классеAbstractMap<K,V> - Параметры:
-
key- ключ, с которым должно быть связано указанное значение -
value- значение, которое должно быть связано с указанным ключом - Возвращает:
- предыдущее значение, связанное с
key, илиnullесли не было сопоставления дляkey. (Возвращениеnullтакже может указывать, что отображение ранее связывалоnullсkey.) - Исключения:
-
ClassCastException- если указанный ключ не может быть сравнен с ключами, которые в данный момент находятся в отображении -
NullPointerException- если указанный ключ равен null, и это отображение использует естественный порядок, или его компаратор не допускает ключи со значением null
remove
public V remove(Object key)
Удаляет сопоставление для этого ключа из этого TreeMap, если оно присутствует.
- Указано в:
-
removeв интерфейсеMap<K,V> - Переопределяет:
-
removeв классеAbstractMap<K,V> - Параметры:
-
key- ключ, для которого должно быть удалено сопоставление - Возвращает:
- предыдущее значение, связанное с
key, илиnullесли не было сопоставления дляkey. (Возвращениеnullтакже может указывать, что отображение ранее связывалоnullсkey.) - Исключения:
-
ClassCastException- если указанный ключ не может быть сравнен с ключами, которые в данный момент находятся в отображении -
NullPointerException- если указанный ключ равен null, и это отображение использует естественный порядок, или его компаратор не допускает ключи со значением null
clear
public void clear()
Удаляет все сопоставления из этого отображения. Отображение будет пустым после возврата этого вызова.
clone
public Object clone()
Возвращает неглубокую копию этого экземпляра TreeMap. (Сами ключи и значения не клонируются.)
- Переопределяет:
-
cloneв классеAbstractMap<K,V> - Возвращает:
- неглубокую копию этого отображения
- См. также:
Cloneable
firstEntry
public Map.Entry<K,V> firstEntry()
Описание скопировано из интерфейса: NavigableMap
Возвращает сопоставление «ключ-значение», связанное с наименьшим ключом в этом отображении, или null если отображение пустое.
- Указано в:
-
firstEntryв интерфейсеNavigableMap<K,V> - Возвращает:
- запись с наименьшим ключом или
nullесли это отображение пустое - С версии:
- 1.6
lastEntry
public Map.Entry<K,V> lastEntry()
Описание скопировано из интерфейса: NavigableMap
Возвращает сопоставление «ключ-значение», связанное с наибольшим ключом в этом отображении, или null если отображение пустое.
- Указано в:
-
lastEntryв интерфейсеNavigableMap<K,V> - Возвращает:
- запись с наибольшим ключом или
nullесли это отображение пустое - С версии:
- 1.6
pollFirstEntry
public Map.Entry<K,V> pollFirstEntry()
Описание скопировано из интерфейса: NavigableMap
Удаляет и возвращает сопоставление «ключ-значение», связанное с наименьшим ключом в этом отображении, или null если отображение пустое.
- Указано в:
-
pollFirstEntryв интерфейсеNavigableMap<K,V> - Возвращает:
- удаленную первую запись этого отображения, или
nullесли это отображение пустое - С версии:
- 1.6
pollLastEntry
public Map.Entry<K,V> pollLastEntry()
Описание скопировано из интерфейса: NavigableMap
Удаляет и возвращает сопоставление «ключ-значение», связанное с наибольшим ключом в этом отображении, или null если отображение пустое.
- Указано в:
-
pollLastEntryв интерфейсеNavigableMap<K,V> - Возвращает:
- удаленную последнюю запись этого отображения, или
nullесли это отображение пустое - С версии:
- 1.6
lowerEntry
public Map.Entry<K,V> lowerEntry(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает сопоставление «ключ-значение», связанное с наибольшим ключом, строго меньшим, чем заданный ключ, или null если такого ключа нет.
- Указано в:
-
lowerEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- запись с наибольшим ключом, меньшим, чем
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если указанный ключ не может быть сравнен с ключами, которые в данный момент находятся в отображении -
NullPointerException- если указанный ключ равен null, и это отображение использует естественный порядок, или его компаратор не допускает ключи со значением null - С версии:
- 1.6
lowerKey
public K lowerKey(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает наибольший ключ, строго меньший, чем заданный ключ, или null если такого ключа нет.
- Определено в:
-
lowerKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- наибольший ключ, меньший чем
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если заданный ключ нельзя сравнить с ключами, текущими в отображении -
NullPointerException- если заданный ключ null, и это отображение использует естественный порядок, или его компаратор не допускает null-ключей - С:
- 1.6
floorEntry
public Map.Entry<K,V> floorEntry(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает сопоставление ключ-значение, связанное с наибольшим ключом, меньшим или равным заданному ключу, или null если такого ключа нет.
- Определено в:
-
floorEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- элемент с наибольшим ключом, меньшим или равным
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если заданный ключ нельзя сравнить с ключами, текущими в отображении -
NullPointerException- если заданный ключ null, и это отображение использует естественный порядок, или его компаратор не допускает null-ключей - С:
- 1.6
floorKey
public K floorKey(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает наибольший ключ, меньший или равный заданному ключу, или null если такого ключа нет.
- Определено в:
-
floorKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- наибольший ключ, меньший или равный
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если заданный ключ нельзя сравнить с ключами, текущими в отображении -
NullPointerException- если заданный ключ null, и это отображение использует естественный порядок, или его компаратор не допускает null-ключей - С:
- 1.6
ceilingEntry
public Map.Entry<K,V> ceilingEntry(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает сопоставление ключ-значение, связанное с наименьшим ключом, большим или равным заданному ключу, или null если такого ключа нет.
- Определено в:
-
ceilingEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- элемент с наименьшим ключом, большим или равным
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если заданный ключ нельзя сравнить с ключами, текущими в отображении -
NullPointerException- если заданный ключ null, и это отображение использует естественный порядок, или его компаратор не допускает null-ключей - С:
- 1.6
ceilingKey
public K ceilingKey(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает наименьший ключ, больший или равный заданному ключу, или null если такого ключа нет.
- Определено в:
-
ceilingKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- наименьший ключ, больший или равный
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если заданный ключ нельзя сравнить с ключами, текущими в отображении -
NullPointerException- если заданный ключ null, и это отображение использует естественный порядок, или его компаратор не допускает null-ключей - С:
- 1.6
higherEntry
public Map.Entry<K,V> higherEntry(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает сопоставление ключ-значение, связанное с наименьшим ключом, строго большим, чем заданный ключ, или null если такого ключа нет.
- Определено в:
-
higherEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- элемент с наименьшим ключом, большим чем
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если заданный ключ нельзя сравнить с ключами, текущими в отображении -
NullPointerException- если заданный ключ null, и это отображение использует естественный порядок, или его компаратор не допускает null-ключей - С:
- 1.6
higherKey
public K higherKey(K key)
Описание скопировано из интерфейса: NavigableMap
Возвращает наименьший ключ, строго больший, чем заданный ключ, или null если такого ключа нет.
- Определено в:
-
higherKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key- ключ - Возвращает:
- наименьший ключ, больший чем
key, илиnullесли такого ключа нет - Исключения:
-
ClassCastException- если заданный ключ нельзя сравнить с ключами, текущими в отображении -
NullPointerException- если заданный ключ null, и это отображение использует естественный порядок, или его компаратор не допускает null-ключей - С:
- 1.6
keySet
public Set<K> keySet()
Возвращает представление Set ключей, содержащихся в этом отображении.
Итератор набора возвращает ключи в порядке возрастания. Разделитель набора является позднесвязанным, быстропроверяемым и дополнительно сообщает Spliterator.SORTED и Spliterator.ORDERED с порядком встречи, который является порядком возрастания ключей. Разделитель компаратор (см. Spliterator.getComparator()) равен null если компаратор дерева (см. SortedMap.comparator()) равен null. В противном случае компаратор разделителя такой же, как или налагает такое же полное упорядочение, как компаратор дерева.
Набор поддерживается отображением, поэтому изменения в отображении отражаются в наборе и наоборот. Если отображение изменяется во время итерации по набору (кроме операции самого итератора remove), результаты итерации не определены. Набор поддерживает удаление элементов, которое удаляет соответствующее отображение из отображения, через операции Iterator.remove, Set.remove, removeAll, retainAll, и clear. Он не поддерживает операции add или addAll.
- Определено в:
-
keySetв интерфейсеMap<K,V> - Определено в:
-
keySetв интерфейсеSortedMap<K,V> - Переопределяет:
-
keySetв классеAbstractMap<K,V> - Возвращает:
- представление набора ключей, содержащихся в этом отображении
navigableKeySet
public NavigableSet<K> navigableKeySet()
Описание скопировано из интерфейса: NavigableMap
Возвращает представление NavigableSet ключей, содержащихся в этом отображении. Итератор набора возвращает ключи в порядке возрастания. Набор поддерживается отображением, поэтому изменения в отображении отражаются в наборе и наоборот. Если отображение изменяется во время итерации по набору (кроме операции самого итератора
remove), результаты итерации не определены. Набор поддерживает удаление элементов, которое удаляет соответствующее отображение из отображения, через операции Iterator.remove, Set.remove, removeAll, retainAll, и clear. Он не поддерживает операции add или addAll.
- Определено в:
-
navigableKeySetв интерфейсеNavigableMap<K,V> - Возвращает:
- представление навигационного набора ключей в этом отображении
- С:
- 1.6
descendingKeySet
public NavigableSet<K> descendingKeySet()
Описание скопировано из интерфейса: NavigableMap
Возвращает представление обратного порядка NavigableSet ключей, содержащихся в этом отображении. Итератор набора возвращает ключи в порядке убывания. Набор поддерживается отображением, поэтому изменения в отображении отражаются в наборе и наоборот. Если отображение изменяется во время итерации по набору (кроме операции самого итератора
remove), результаты итерации не определены. Набор поддерживает удаление элементов, которое удаляет соответствующее отображение из отображения, через операции Iterator.remove, Set.remove, removeAll, retainAll, и clear. Он не поддерживает операции add или addAll.
- Определено в:
-
descendingKeySetв интерфейсеNavigableMap<K,V> - Возвращает:
- представление навигационного набора ключей в обратном порядке в этом отображении
- С:
- 1.6
values
public Collection<V> values()
Возвращает представление Collection значений, содержащихся в этом отображении.
Итератор коллекции возвращает значения в порядке возрастания соответствующих ключей. Разделитель коллекции является позднесвязанным, быстропроверяемым и дополнительно сообщает Spliterator.ORDERED с порядком встречи, который является порядком возрастания соответствующих ключей.
Коллекция поддерживается отображением, поэтому изменения в отображении отражаются в коллекции и наоборот. Если отображение изменяется во время итерации по коллекции (кроме операции самого итератора remove), результаты итерации не определены. Коллекция поддерживает удаление элементов, которое удаляет соответствующее отображение из отображения, через операции Iterator.remove, Collection.remove, removeAll, retainAll и clear. Она не поддерживает операции add или addAll.
- Указано в:
-
valuesв интерфейсеMap<K,V> - Указано в:
-
valuesв интерфейсеSortedMap<K,V> - Переопределяет:
-
valuesв классеAbstractMap<K,V> - Возвращает:
- представление коллекции значений, содержащихся в этом отображении
entrySet
public Set<Map.Entry<K,V>> entrySet()
Возвращает представление Set отображений, содержащихся в этом отображении.
Итератор множества возвращает записи в порядке возрастания ключей. Сплитератор множества является поздним связыванием, быстродействующим, и дополнительно сообщает Spliterator.SORTED и Spliterator.ORDERED с порядком обхода, являющимся порядком возрастания ключей.
Множество поддерживается отображением, поэтому изменения в отображении отражаются в множестве и наоборот. Если отображение изменяется во время итерации по множеству (за исключением операции remove самого итератора или операции setValue над записью отображения, возвращаемой итератором), результаты итерации не определены. Множество поддерживает удаление элементов, которое удаляет соответствующее отображение из отображения, с помощью операций Iterator.remove, Set.remove, removeAll, retainAll и clear. Оно не поддерживает операции add или addAll.
- Указано в:
-
entrySetв интерфейсеMap<K,V> - Указано в:
-
entrySetв интерфейсеSortedMap<K,V> - Возвращает:
- представление множества отображений, содержащихся в этом отображении, отсортированных в порядке возрастания ключей
descendingMap
public NavigableMap<K,V> descendingMap()
Описание скопировано из интерфейса: NavigableMap
Возвращает представление отображений, содержащихся в этом отображении, в обратном порядке. Обратное отображение поддерживается этим отображением, поэтому изменения в отображении отражаются в обратном отображении и наоборот. Если любое из отображений изменяется во время итерации по представлению коллекции любого из отображений (за исключением операции remove самого итератора), результаты итерации не определены.
Возвращаемое отображение имеет порядок, эквивалентный Collections.reverseOrder(comparator()). Выражение m.descendingMap().descendingMap() возвращает представление m, по существу эквивалентное m.
- Указано в:
-
descendingMapв интерфейсеNavigableMap<K,V> - Возвращает:
- представление этого отображения в обратном порядке
- С версии:
- 1.6
subMap
public NavigableMap<K,V> subMap(K fromKey,
boolean fromInclusive,
K toKey,
boolean toInclusive) Описание скопировано из интерфейса: NavigableMap
Возвращает представление части этого отображения, ключи которого находятся в диапазоне от fromKey до toKey. Если fromKey и toKey равны, возвращаемое отображение будет пустым, если только fromInclusive и toInclusive не истинны. Возвращаемое отображение поддерживается этим отображением, поэтому изменения в возвращаемом отображении отражаются в этом отображении и наоборот. Возвращаемое отображение поддерживает все необязательные операции отображения, которые поддерживает это отображение.
Возвращаемое отображение выбросит IllegalArgumentException при попытке вставить ключ за пределами своего диапазона или создать подотображение, одна из конечных точек которого находится за пределами его диапазона.
- Указано в:
-
subMapв интерфейсеNavigableMap<K,V> - Параметры:
-
fromKey- нижняя граница ключей в возвращаемом отображении -
fromInclusive-trueесли нижняя граница должна быть включена в возвращаемое представление -
toKey- верхняя граница ключей в возвращаемом отображении -
toInclusive-trueесли верхняя граница должна быть включена в возвращаемое представление - Возвращает:
- представление части этого отображения, ключи которого находятся в диапазоне от
fromKeyдоtoKey - Исключения:
-
ClassCastException- еслиfromKeyиtoKeyне могут быть сравнены друг с другом с использованием компаратора этого отображения (или, если отображение не имеет компаратора, с использованием естественного порядка). Реализации могут, но не обязаны, выбрасывать это исключение, еслиfromKeyилиtoKeyне могут быть сравнены с ключами, которые в настоящее время находятся в отображении. -
NullPointerException- еслиfromKeyилиtoKeyравно null и это отображение использует естественный порядок, или его компаратор не допускает ключи null -
IllegalArgumentException- еслиfromKeyбольше, чемtoKey; или если само это отображение имеет ограниченный диапазон, иfromKeyилиtoKeyнаходится за пределами границ диапазона - С версии:
- 1.6
headMap
public NavigableMap<K,V> headMap(K toKey,
boolean inclusive) Описание скопировано из интерфейса: NavigableMap
Возвращает представление части этого отображения, ключи которого меньше (или равны, если inclusive истинно) toKey. Возвращаемое отображение поддерживается этим отображением, поэтому изменения в возвращаемом отображении отражаются в этом отображении и наоборот. Возвращаемое отображение поддерживает все необязательные операции отображения, которые поддерживает это отображение.
Возвращаемое отображение выбросит IllegalArgumentException при попытке вставить ключ за пределами своего диапазона.
- Указано в:
-
headMapв интерфейсеNavigableMap<K,V> - Параметры:
-
toKey- верхняя граница ключей в возвращаемом отображении -
inclusive-trueесли верхняя граница должна быть включена в возвращаемое представление - Возвращает:
- представление части этого отображения, ключи которого меньше (или равны, если
inclusiveистинно)toKey - Исключения:
-
ClassCastException- еслиtoKeyнесовместим с компаратором этого отображения (или, если отображение не имеет компаратора, еслиtoKeyне реализуетComparable). Реализации могут, но не обязаны, выбрасывать это исключение, еслиtoKeyне может быть сравнен с ключами, которые в настоящее время находятся в отображении. -
NullPointerException- еслиtoKeyравно null и это отображение использует естественный порядок, или его компаратор не допускает ключи null -
IllegalArgumentException- если само это отображение имеет ограниченный диапазон, иtoKeyнаходится за пределами границ диапазона - С версии:
- 1.6
tailMap
public NavigableMap<K,V> tailMap(K fromKey,
boolean inclusive) Описание скопировано из интерфейса: NavigableMap
Возвращает представление части этого отображения, ключи которого больше (или равны, если inclusive истинно) fromKey. Возвращаемое отображение поддерживается этим отображением, поэтому изменения в возвращаемом отображении отражаются в этом отображении и наоборот. Возвращаемое отображение поддерживает все необязательные операции отображения, которые поддерживает это отображение.
Возвращаемое отображение выбросит IllegalArgumentException при попытке вставить ключ за пределами своего диапазона.
- Указано в:
-
tailMapв интерфейсеNavigableMap<K,V> - Параметры:
-
fromKey- нижняя граница ключей в возвращаемом отображении -
inclusive-trueесли нижняя граница должна быть включена в возвращаемое представление - Возвращает:
- представление части этого отображения, ключи которого больше (или равны, если
inclusiveистинно)fromKey - Исключения:
-
ClassCastException- еслиfromKeyнесовместим с компаратором этого отображения (или, если отображение не имеет компаратора, еслиfromKeyне реализуетComparable). Реализации могут, но не обязаны, выбрасывать это исключение, еслиfromKeyне может быть сравнен с ключами, которые в настоящее время находятся в отображении. -
NullPointerException- еслиfromKeyравно null и это отображение использует естественный порядок, или его компаратор не допускает ключи null -
IllegalArgumentException- если само это отображение имеет ограниченный диапазон, иfromKeyнаходится за пределами границ диапазона - С версии:
- 1.6
subMap
public SortedMap<K,V> subMap(K fromKey,
K toKey) Описание скопировано из интерфейса: NavigableMap
Возвращает представление части этого отображения, ключи которого находятся в диапазоне от fromKey, включительно, до toKey, не включительно. (Если fromKey и toKey равны, возвращаемое отображение будет пустым.) Возвращаемое отображение поддерживается этим отображением, поэтому изменения в возвращаемом отображении отражаются в этом отображении и наоборот. Возвращаемое отображение поддерживает все необязательные операции отображения, которые поддерживает это отображение.
Возвращаемое отображение выбросит IllegalArgumentException при попытке вставить ключ за пределами своего диапазона.
Эквивалентно subMap(fromKey, true, toKey, false).
- Указано в:
-
subMapв интерфейсеNavigableMap<K,V> - Указано в:
-
subMapв интерфейсеSortedMap<K,V> - Параметры:
-
fromKey- нижняя граница (включительно) ключей в возвращаемом отображении -
toKey- верхняя граница (не включительно) ключей в возвращаемом отображении - Возвращает:
- представление части этого отображения, ключи которого находятся в диапазоне от
fromKey, включительно, доtoKey, не включительно - Исключения:
-
ClassCastException- еслиfromKeyиtoKeyне могут быть сравнены друг с другом с использованием компаратора этого отображения (или, если отображение не имеет компаратора, с использованием естественного порядка). Реализации могут, но не обязаны, выбрасывать это исключение, еслиfromKeyилиtoKeyне могут быть сравнены с ключами, которые в настоящее время находятся в отображении. -
NullPointerException- еслиfromKeyилиtoKeyравно null и это отображение использует естественный порядок, или его компаратор не допускает ключи null -
IllegalArgumentException- еслиfromKeyбольше, чемtoKey; или если само это отображение имеет ограниченный диапазон, иfromKeyилиtoKeyнаходится за пределами границ диапазона
headMap
public SortedMap<K,V> headMap(K toKey)
Описание скопировано из интерфейса: NavigableMap
Возвращает представление части этого набора, ключи которого строго меньше toKey. Возвращаемый набор поддерживается этим набором, поэтому изменения в возвращаемом наборе отражаются в этом наборе и наоборот. Возвращаемый набор поддерживает все необязательные операции набора, которые поддерживает этот набор.
Возвращаемый набор будет выбрасывать IllegalArgumentException при попытке вставить ключ вне своего диапазона.
Эквивалентно headMap(toKey, false).
- Определено в:
-
headMapв интерфейсеNavigableMap<K,V> - Определено в:
-
headMapв интерфейсеSortedMap<K,V> - Параметры:
-
toKey- верхняя граница (исключая) ключей в возвращаемом наборе - Возвращает:
- представление части этого набора, ключи которого строго меньше
toKey - Выбрасывает:
-
ClassCastException- еслиtoKeyне совместим с компаратором этого набора (или, если у набора нет компаратора, еслиtoKeyне реализуетComparable). Реализации могут, но не обязаны, выбрасывать это исключение, еслиtoKeyнельзя сравнить с ключами, присутствующими в текущем наборе. -
NullPointerException- еслиtoKeyравно null, и этот набор использует естественный порядок сортировки, или его компаратор не допускает null-ключей -
IllegalArgumentException- если у этого набора ограниченный диапазон, иtoKeyнаходится вне границ диапазона
tailMap
public SortedMap<K,V> tailMap(K fromKey)
Описание скопировано из интерфейса: NavigableMap
Возвращает представление части этого набора, ключи которого больше или равны fromKey. Возвращаемый набор поддерживается этим набором, поэтому изменения в возвращаемом наборе отражаются в этом наборе, и наоборот. Возвращаемый набор поддерживает все необязательные операции набора, которые поддерживает этот набор.
Возвращаемый набор будет выбрасывать IllegalArgumentException при попытке вставить ключ вне своего диапазона.
Эквивалентно tailMap(fromKey, true).
- Определено в:
-
tailMapв интерфейсеNavigableMap<K,V> - Определено в:
-
tailMapв интерфейсеSortedMap<K,V> - Параметры:
-
fromKey- нижняя граница (включительно) ключей в возвращаемом наборе - Возвращает:
- представление части этого набора, ключи которого больше или равны
fromKey - Выбрасывает:
-
ClassCastException- еслиfromKeyне совместим с компаратором этого набора (или, если у набора нет компаратора, еслиfromKeyне реализуетComparable). Реализации могут, но не обязаны, выбрасывать это исключение, еслиfromKeyнельзя сравнить с ключами, присутствующими в текущем наборе. -
NullPointerException- еслиfromKeyравно null, и этот набор использует естественный порядок сортировки, или его компаратор не допускает null-ключей -
IllegalArgumentException- если у этого набора ограниченный диапазон, иfromKeyнаходится вне границ диапазона
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/TreeMap.html