Class ConcurrentSkipListMap<K, V>
- Параметры типа:
K— тип ключей, хранящихся в этой картеV— тип отображаемых значений
- Все реализуемые интерфейсы:
Serializable, Cloneable, ConcurrentMap<K,V>, ConcurrentNavigableMap<K, V>, Map<K, V>, NavigableMap<K, V>, SequencedMap<K, V>, SortedMap<K, V>
public class ConcurrentSkipListMap<K,V> extends AbstractMap<K,V> implements ConcurrentNavigableMap<K,V>, Cloneable, Serializable
ConcurrentNavigableMap. Карта сортируется в соответствии с естественным порядком ключей или с помощью Comparator, заданного при создании карты; выбор зависит от используемого конструктора. Этот класс реализует конкурентный вариант списков с пропусками, обеспечивающий ожидаемую среднюю временную сложность log(n) для операций containsKey, get, put и remove, а также их вариантов. Операции вставки, удаления, обновления и доступа безопасно выполняются одновременно несколькими потоками.
Итераторы и сплитераторы являются слабо согласованными.
Представления с ключами, упорядоченными по возрастанию, и их итераторы работают быстрее, чем соответствующие представления и итераторы с обратным порядком.
Все пары Map.Entry, возвращаемые методами этого класса и его представлений, представляют собой снимки отображений на момент их создания. Они не поддерживают метод Entry.setValue. (Однако обратите внимание, что изменить отображения в связанной карте можно с помощью put, putIfAbsent или replace — в зависимости от того, какой именно эффект вам нужен.)
Обратите внимание, что для массовых операций putAll, equals, toArray, containsValue и clear не гарантируется атомарное выполнение. Например, итератор, работающий одновременно с операцией putAll, может увидеть только некоторые из добавленных элементов.
Этот класс, его представления и итераторы реализуют все необязательные методы интерфейсов Map и Iterator. Как и большинство других конкурентных коллекций, этот класс не допускает использование ключей или значений null, поскольку некоторые возвращаемые значения null невозможно надежно отличить от отсутствия элементов.
Этот класс входит в состав Java Collections Framework.
- С версии:
- 1.6
- См. также:
Краткое описание вложенных классов
Вложенные классы и интерфейсы, объявленные в классе AbstractMap
AbstractMap.SimpleEntry<K, V>, AbstractMap.SimpleImmutableEntry<K, V>
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ConcurrentSkipListMap() |
Создает новую пустую карту, отсортированную в соответствии с естественным порядком ключей. |
ConcurrentSkipListMap |
Создает новую пустую карту, отсортированную в соответствии с указанным компаратором. |
ConcurrentSkipListMap |
Создает новую карту, содержащую те же отображения, что и заданная карта, и отсортированную в соответствии с естественным порядком ключей. |
ConcurrentSkipListMap |
Создает новую карту, содержащую те же отображения и использующую тот же порядок, что и заданная отсортированная карта. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Map.Entry |
ceilingEntry |
Возвращает отображение ключ-значение, связанное с наименьшим ключом, большим или равным заданному ключу, или null, если такой записи нет. |
K |
ceilingKey |
Возвращает наименьший ключ, больший или равный заданному ключу, или null, если такого ключа нет. |
void |
clear() |
Удаляет все отображения из этой карты. |
ConcurrentSkipListMap |
clone() |
Возвращает поверхностную копию этого экземпляра ConcurrentSkipListMap. |
Comparator |
comparator() |
Возвращает компаратор, используемый для упорядочения ключей в этой карте, или null, если в карте используется естественный порядок ключей. |
V |
compute |
Пытается вычислить отображение для указанного ключа и его текущего отображаемого значения (или null, если текущего отображения нет). |
V |
computeIfAbsent |
Если указанный ключ еще не связан со значением, пытается вычислить его значение с помощью заданной функции отображения и добавляет его в эту карту, если только null. |
V |
computeIfPresent |
Если значение для указанного ключа присутствует, пытается вычислить новое отображение, используя ключ и его текущее отображаемое значение. |
boolean |
containsKey |
Возвращает true, если эта карта содержит отображение для указанного ключа. |
boolean |
containsValue |
Возвращает true, если эта карта отображает один или несколько ключей в указанное значение. |
NavigableSet |
descendingKeySet() |
Возвращает представление NavigableSet, содержащего ключи этой карты, в обратном порядке. |
ConcurrentNavigableMap |
descendingMap() |
Возвращает представление отображений этой карты в обратном порядке. |
Set |
entrySet() |
Возвращает представление Set, содержащего отображения этой карты. |
boolean |
equals |
Сравнивает указанный объект с этой картой на равенство. |
Map.Entry |
firstEntry() |
Возвращает отображение ключ-значение, связанное с наименьшим ключом в этой карте, или null, если карта пуста. |
K |
firstKey() |
Возвращает первый (наименьший) ключ, находящийся в этой карте в данный момент. |
Map.Entry |
floorEntry |
Возвращает отображение ключ-значение, связанное с наибольшим ключом, меньшим или равным заданному ключу, или null, если такого ключа нет. |
K |
floorKey |
Возвращает наибольший ключ, меньший или равный заданному ключу, или null, если такого ключа нет. |
V |
get |
Возвращает значение, которому соответствует указанный ключ, или null, если в этой карте нет отображения для данного ключа. |
V |
getOrDefault |
Возвращает значение, которому соответствует указанный ключ, или заданное значение defaultValue, если в этой карте нет отображения для данного ключа. |
ConcurrentNavigableMap |
headMap |
Возвращает представление части этой карты, ключи которой строго меньше toKey. |
ConcurrentNavigableMap |
headMap |
Возвращает представление части этой карты, ключи которой меньше toKey (или равны ему, если inclusive равно true). |
Map.Entry |
higherEntry |
Возвращает отображение ключ-значение, связанное с наименьшим ключом, строго большим заданного ключа, или null, если такого ключа нет. |
K |
higherKey |
Возвращает наименьший ключ, строго больший заданного ключа, или null, если такого ключа нет. |
boolean |
isEmpty() |
Возвращает true, если эта карта не содержит отображений ключ-значение. |
NavigableSet |
keySet() |
Возвращает представление NavigableSet, содержащего ключи этой карты. |
Map.Entry |
lastEntry() |
Возвращает отображение ключ-значение, связанное с наибольшим ключом в этой карте, или null, если карта пуста. |
K |
lastKey() |
Возвращает последний (наибольший) ключ, находящийся в этой карте в данный момент. |
Map.Entry |
lowerEntry |
Возвращает отображение ключ-значение, связанное с наибольшим ключом, строго меньшим заданного ключа, или null, если такого ключа нет. |
K |
lowerKey |
Возвращает наибольший ключ, строго меньший заданного ключа, или null, если такого ключа нет. |
V |
merge |
Если указанный ключ еще не связан со значением, связывает его с заданным значением. |
NavigableSet |
navigableKeySet() |
Возвращает представление NavigableSet, содержащего ключи этой карты. |
Map.Entry |
pollFirstEntry() |
Удаляет и возвращает отображение ключ-значение, связанное с наименьшим ключом в этой карте, или null, если карта пуста. |
Map.Entry |
pollLastEntry() |
Удаляет и возвращает отображение ключ-значение, связанное с наибольшим ключом в этой карте, или null, если карта пуста. |
V |
put |
Связывает указанное значение с указанным ключом в этой карте. |
V |
putFirst |
Выбрасывает UnsupportedOperationException. |
V |
putIfAbsent |
Если указанный ключ еще не связан со значением, связывает его с заданным значением. |
V |
putLast |
Выбрасывает UnsupportedOperationException. |
V |
remove |
Удаляет отображение для указанного ключа из этой карты, если оно существует. |
boolean |
remove |
Удаляет запись для ключа, только если в данный момент ему соответствует заданное значение. |
V |
replace |
Заменяет запись для ключа, только если в данный момент ему соответствует какое-либо значение. |
boolean |
replace |
Заменяет запись для ключа, только если в данный момент ему соответствует заданное значение. |
int |
size() |
Возвращает количество отображений ключ-значение в этой карте. |
ConcurrentNavigableMap |
subMap |
Возвращает представление части этой карты, ключи которой находятся в диапазоне от fromKey до toKey. |
ConcurrentNavigableMap |
subMap |
Возвращает представление части этой карты, ключи которой находятся в диапазоне от fromKey включительно до toKey исключительно. |
ConcurrentNavigableMap |
tailMap |
Возвращает представление части этой карты, ключи которой больше или равны fromKey. |
ConcurrentNavigableMap |
tailMap |
Возвращает представление части этой карты, ключи которой больше fromKey (или равны ему, если inclusive равно true). |
Collection |
values() |
Возвращает представление Collection, содержащего значения этой карты. |
Методы, объявленные в интерфейсе ConcurrentMap
forEach, replaceAll
Методы, объявленные в интерфейсе NavigableMap
reversed
Методы, объявленные в интерфейсе SequencedMap
sequencedEntrySet, sequencedKeySet, sequencedValues
Подробное описание конструкторов
ConcurrentSkipListMap
public ConcurrentSkipListMap()
ConcurrentSkipListMap
public ConcurrentSkipListMap(Comparator<? super K> comparator)
- Параметры:
-
comparator— компаратор, который будет использоваться для упорядочивания этой карты. Еслиnull, будет использоваться естественный порядок ключей.
ConcurrentSkipListMap
public ConcurrentSkipListMap(Map<? extends K, ? extends V> m)
- Параметры:
-
m— карта, отображения из которой следует поместить в эту карту - Исключения:
-
ClassCastException— если ключи вmне являютсяComparableили не могут сравниваться друг с другом -
NullPointerException— если указанная карта или любой из ее ключей либо значений равен null
ConcurrentSkipListMap
public ConcurrentSkipListMap(SortedMap<K, ? extends V> m)
- Параметры:
-
m— отсортированная карта, отображения из которой следует поместить в эту карту, а компаратор — использовать для сортировки этой карты - Исключения:
-
NullPointerException— если указанная отсортированная карта или любой из ее ключей либо значений равен null
Подробное описание методов
clone
public ConcurrentSkipListMap<K,V> clone()
ConcurrentSkipListMap. (Сами ключи и значения не клонируются.)- Переопределяет:
-
cloneв классеAbstractMap<K,V> - Возвращает:
- поверхностную копию этой карты
- См. также:
containsKey
public boolean containsKey(Object key)
true, если эта карта содержит отображение для указанного ключа.- Определен в:
-
containsKeyв интерфейсеMap<K,V> - Переопределяет:
-
containsKeyв классеAbstractMap<K,V> - Параметры:
-
key— ключ, наличие которого в этой карте требуется проверить - Возвращает:
-
true, если эта карта содержит отображение для указанного ключа - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если указанный ключ равен null
get
public V get(Object key)
null, если в этой карте нет отображения для ключа. Формально, если эта карта содержит отображение от ключа k к значению v, такое что key равен k согласно порядку сортировки карты, этот метод возвращает v; в противном случае он возвращает null. (Таких отображений может быть не более одного.)
- Определен в:
-
getв интерфейсеMap<K,V> - Переопределяет:
-
getв классеAbstractMap<K,V> - Параметры:
-
key— ключ, значение которого требуется вернуть - Возвращает:
- значение, которому соответствует указанный ключ, или
null, если в этой карте нет отображения для ключа - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если указанный ключ равен null
getOrDefault
public V getOrDefault(Object key, V defaultValue)
- Определен в:
-
getOrDefaultв интерфейсеConcurrentMap<K,V> - Определен в:
-
getOrDefaultв интерфейсеMap<K,V> - Параметры:
-
key— ключ -
defaultValue— значение, возвращаемое, если в этой карте нет отображения для указанного ключа - Возвращает:
- отображение для ключа, если оно имеется; в противном случае — defaultValue
- Исключения:
-
NullPointerException— если указанный ключ равен null - Начиная с:
- 1.8
put
public V put(K key, V value)
- Определен в:
-
putв интерфейсеMap<K,V> - Переопределяет:
-
putв классеAbstractMap<K,V> - Параметры:
-
key— ключ, с которым связывается указанное значение -
value— значение, связываемое с указанным ключом - Возвращает:
- предыдущее значение, связанное с указанным ключом, или
null, если для ключа не было отображения - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если указанный ключ или значение равны null
remove
public V remove(Object key)
- Определен в:
-
removeв интерфейсеMap<K,V> - Переопределяет:
-
removeв классеAbstractMap<K,V> - Параметры:
-
key— ключ, отображение для которого следует удалить - Возвращает:
- предыдущее значение, связанное с указанным ключом, или
null, если для ключа не было отображения - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если указанный ключ равен null
containsValue
public boolean containsValue(Object value)
true, если в этой карте одному или нескольким ключам соответствует указанное значение. Эта операция выполняется за время, линейно зависящее от размера карты. Кроме того, во время выполнения этого метода карта может измениться, и в таком случае возвращаемый результат может быть неточным.- Определен в:
-
containsValueв интерфейсеMap<K,V> - Переопределяет:
-
containsValueв классеAbstractMap<K,V> - Параметры:
-
value— значение, наличие которого в этой карте требуется проверить - Возвращает:
-
true, если существует отображение дляvalue; в противном случае —false - Исключения:
-
NullPointerException— если указанное значение равно null
size
public int size()
Integer.MAX_VALUE элементов, возвращает Integer.MAX_VALUE.isEmpty
clear
computeIfAbsent
public V computeIfAbsent(K key, Function<? super K, ? extends V> mappingFunction)
null. НЕ гарантируется, что функция будет применена атомарно и только один раз, если значение отсутствует.- Определен в:
-
computeIfAbsentв интерфейсеConcurrentMap<K,V> - Определен в:
-
computeIfAbsentв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым связывается указанное значение -
mappingFunction— функция для вычисления значения - Возвращает:
- текущее значение (существующее или вычисленное), связанное с указанным ключом, или null, если вычисленное значение равно null
- Исключения:
-
NullPointerException— если указанный ключ равен null или mappingFunction равна null - Начиная с:
- 1.8
computeIfPresent
public V computeIfPresent(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction)
- Определен в:
-
computeIfPresentв интерфейсеConcurrentMap<K,V> - Определен в:
-
computeIfPresentв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым может быть связано значение -
remappingFunction— функция для вычисления значения - Возвращает:
- новое значение, связанное с указанным ключом, или null, если такого значения нет
- Исключения:
-
NullPointerException— если указанный ключ равен null или remappingFunction равна null - Начиная с:
- 1.8
compute
public V compute(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction)
null, если текущего отображения нет). НЕ гарантируется, что функция будет применена атомарно и только один раз.- Определен в:
-
computeв интерфейсеConcurrentMap<K,V> - Определен в:
-
computeв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым связывается указанное значение -
remappingFunction— функция для вычисления значения - Возвращает:
- новое значение, связанное с указанным ключом, или null, если такого значения нет
- Исключения:
-
NullPointerException— если указанный ключ равен null или remappingFunction равна null - Начиная с:
- 1.8
merge
public V merge(K key, V value, BiFunction<? super V, ? super V, ? extends V> remappingFunction)
null. НЕ гарантируется, что функция будет применена атомарно и только один раз.- Определен в:
-
mergeв интерфейсеConcurrentMap<K,V> - Определен в:
-
mergeв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым связывается указанное значение -
value— значение, используемое при отсутствии отображения -
remappingFunction— функция для повторного вычисления значения, если оно имеется - Возвращает:
- новое значение, связанное с указанным ключом, или null, если такого значения нет
- Исключения:
-
NullPointerException— если указанный ключ или значение равны null либо remappingFunction равна null - Начиная с:
- 1.8
keySet
public NavigableSet<K> keySet()
NavigableSet. Итератор набора возвращает ключи в порядке возрастания. Сплитератор набора дополнительно сообщает характеристики Spliterator.CONCURRENT, Spliterator.NONNULL, Spliterator.SORTED и Spliterator.ORDERED; порядок обхода соответствует возрастанию ключей.
Компаратор сплитератора равен null, если компаратор карты равен null. В противном случае компаратор сплитератора совпадает с компаратором карты или задает тот же полный порядок.
Набор связан с картой, поэтому изменения карты отражаются в наборе, и наоборот. Набор поддерживает удаление элементов, которое удаляет соответствующее отображение из карты, с помощью операций Iterator.remove, Set.remove, removeAll, retainAll и clear. Операции add и addAll не поддерживаются.
Итераторы и сплитераторы представления являются слабо согласованными.
Этот метод эквивалентен методу navigableKeySet.
values
public Collection<V> values()
Collection. Итератор коллекции возвращает значения в порядке возрастания соответствующих ключей. Сплитератор коллекции дополнительно сообщает характеристики Spliterator.CONCURRENT, Spliterator.NONNULL и Spliterator.ORDERED; порядок обхода соответствует возрастанию соответствующих ключей.
Коллекция связана с картой, поэтому изменения карты отражаются в коллекции, и наоборот. Коллекция поддерживает удаление элементов, которое удаляет соответствующее отображение из карты, с помощью операций Iterator.remove, Collection.remove, removeAll, retainAll и clear. Операции add и addAll не поддерживаются.
Итераторы и сплитераторы представления являются слабо согласованными.
entrySet
public Set<Map.Entry<K,V>> entrySet()
Set. Итератор набора возвращает записи в порядке возрастания ключей. Сплитератор набора дополнительно сообщает характеристики Spliterator.CONCURRENT, Spliterator.NONNULL, Spliterator.SORTED и Spliterator.ORDERED; порядок обхода соответствует возрастанию ключей.
Набор связан с картой, поэтому изменения карты отражаются в наборе, и наоборот. Набор поддерживает удаление элементов, которое удаляет соответствующее отображение из карты, с помощью операций Iterator.remove, Set.remove, removeAll, retainAll и clear. Операции add и addAll не поддерживаются.
Итераторы и сплитераторы представления являются слабо согласованными.
Элементы Map.Entry, перебираемые с помощью iterator или spliterator, не поддерживают операцию setValue.
descendingMap
public ConcurrentNavigableMap<K,V> descendingMap()
ConcurrentNavigableMapПорядок возвращаемой карты эквивалентен порядку, заданному Collections.reverseOrder(comparator()). Выражение m.descendingMap().descendingMap() возвращает представление m, по существу эквивалентное m.
- Определен в:
-
descendingMapв интерфейсеConcurrentNavigableMap<K,V> - Определен в:
-
descendingMapв интерфейсеNavigableMap<K,V> - Возвращает:
- представление этой карты в обратном порядке
descendingKeySet
public NavigableSet<K> descendingKeySet()
ConcurrentNavigableMapNavigableSet. Итератор набора возвращает ключи в порядке убывания. Набор связан с картой, поэтому изменения карты отражаются в наборе, и наоборот. Набор поддерживает удаление элементов, которое удаляет соответствующее отображение из карты, с помощью операций Iterator.remove, Set.remove, removeAll, retainAll и clear. Операции add и addAll не поддерживаются. Итераторы и сплитераторы представления являются слабо согласованными.
- Определен в:
-
descendingKeySetв интерфейсеConcurrentNavigableMap<K,V> - Определен в:
-
descendingKeySetв интерфейсеNavigableMap<K,V> - Возвращает:
- представление ключей этой карты в виде навигационного набора в обратном порядке
equals
public boolean equals(Object o)
true, если переданный объект также является картой и обе карты содержат одинаковые отображения. Формально, две карты m1 и m2 содержат одинаковые отображения, если m1.entrySet().equals(m2.entrySet()). Эта операция может вернуть неверный результат, если во время ее выполнения любая из карт одновременно изменяется.putIfAbsent
public V putIfAbsent(K key, V value)
map эквивалентно: if (!map.containsKey(key))
return map.put(key, value);
else
return map.get(key);, за исключением того, что действие выполняется атомарно.- Определен в:
-
putIfAbsentв интерфейсеConcurrentMap<K,V> - Определен в:
-
putIfAbsentв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым связывается указанное значение -
value— значение, связываемое с указанным ключом - Возвращает:
- предыдущее значение, связанное с указанным ключом, или
null, если для ключа не было отображения - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если указанный ключ или значение равны null
remove
public boolean remove(Object key, Object value)
map эквивалентно: if (map.containsKey(key)
&& Objects.equals(map.get(key), value)) {
map.remove(key);
return true;
} else {
return false;
}, за исключением того, что действие выполняется атомарно.- Определен в:
-
removeв интерфейсеConcurrentMap<K,V> - Определен в:
-
removeв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым связано указанное значение -
value— значение, которое, как ожидается, связано с указанным ключом - Возвращает:
-
true, если значение было удалено - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если указанный ключ равен null
replace
public boolean replace(K key, V oldValue, V newValue)
map эквивалентно: if (map.containsKey(key)
&& Objects.equals(map.get(key), oldValue)) {
map.put(key, newValue);
return true;
} else {
return false;
}, за исключением того, что действие выполняется атомарно.- Определен в:
-
replaceв интерфейсеConcurrentMap<K,V> - Определен в:
-
replaceв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым связано указанное значение -
oldValue— значение, которое, как ожидается, связано с указанным ключом -
newValue— значение, связываемое с указанным ключом - Возвращает:
-
true, если значение было заменено - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если любой из аргументов равен null
replace
public V replace(K key, V value)
map эквивалентно: if (map.containsKey(key))
return map.put(key, value);
else
return null;, за исключением того, что действие выполняется атомарно.- Определен в:
-
replaceв интерфейсеConcurrentMap<K,V> - Определен в:
-
replaceв интерфейсеMap<K,V> - Параметры:
-
key— ключ, с которым связано указанное значение -
value— значение, связываемое с указанным ключом - Возвращает:
- предыдущее значение, связанное с указанным ключом, или
null, если для ключа не было отображения - Исключения:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в карте -
NullPointerException— если указанный ключ или значение равны null
comparator
public Comparator<? super K> comparator()
SortedMapnull, если в этой карте используется естественный порядок ключей.- Указано в:
-
comparatorв интерфейсеSortedMap<K,V> - Возвращает:
- компаратор, используемый для упорядочения ключей в этой карте, или
null, если в этой карте используется естественный порядок ключей
firstKey
public K firstKey()
SortedMap- Указано в:
-
firstKeyв интерфейсеSortedMap<K,V> - Возвращает:
- первый (наименьший) ключ, находящийся в данный момент в этой карте
- Вызывает исключение:
-
NoSuchElementException— если эта карта пуста
lastKey
public K lastKey()
SortedMap- Указано в:
-
lastKeyв интерфейсеSortedMap<K,V> - Возвращает:
- последний (наибольший) ключ, находящийся в данный момент в этой карте
- Вызывает исключение:
-
NoSuchElementException— если эта карта пуста
putFirst
public V putFirst(K k, V v)
UnsupportedOperationException. Порядок обхода, определяемый методом сравнения этой карты, задаёт расположение соответствий, поэтому явное указание позиции не поддерживается.- Указано в:
-
putFirstв интерфейсеSequencedMap<K,V> - Указано в:
-
putFirstв интерфейсеSortedMap<K,V> - Параметры:
-
k— ключ -
v— значение - Возвращает:
- значение, ранее связанное с k, или null, если такого значения нет
- Вызывает исключение:
-
UnsupportedOperationException— всегда - Начиная с версии:
- 21
putLast
public V putLast(K k, V v)
UnsupportedOperationException. Порядок обхода, определяемый методом сравнения этой карты, задаёт расположение соответствий, поэтому явное указание позиции не поддерживается.- Указано в:
-
putLastв интерфейсеSequencedMap<K,V> - Указано в:
-
putLastв интерфейсеSortedMap<K,V> - Параметры:
-
k— ключ -
v— значение - Возвращает:
- значение, ранее связанное с k, или null, если такого значения нет
- Вызывает исключение:
-
UnsupportedOperationException— всегда - Начиная с версии:
- 21
subMap
public ConcurrentNavigableMap<K,V> subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
NavigableMapfromKey до toKey. Если fromKey и toKey равны, возвращаемая карта пуста, если только fromInclusive и toInclusive не равны true. Возвращаемая карта связана с этой картой, поэтому изменения в возвращаемой карте отражаются в этой карте, и наоборот. Возвращаемая карта поддерживает все необязательные операции с картой, поддерживаемые этой картой. При попытке вставить ключ за пределами диапазона или создать подмножество карты, одна из границ которого находится за пределами диапазона, возвращаемая карта вызовет IllegalArgumentException.
- Указано в:
-
subMapв интерфейсеConcurrentNavigableMap<K,V> - Указано в:
-
subMapв интерфейсеNavigableMap<K,V> - Параметры:
-
fromKey— нижняя граница ключей возвращаемой карты -
fromInclusive—true, если нижнюю границу необходимо включить в возвращаемое представление -
toKey— верхняя граница ключей возвращаемой карты -
toInclusive—true, если верхнюю границу необходимо включить в возвращаемое представление - Возвращает:
- представление части этой карты, ключи которой находятся в диапазоне от
fromKeyдоtoKey - Вызывает исключение:
-
ClassCastException— еслиfromKeyиtoKeyнельзя сравнить друг с другом с помощью компаратора этой карты (или, если у карты нет компаратора, с помощью естественного порядка). Реализации могут, но не обязаны, вызывать это исключение, еслиfromKeyилиtoKeyнельзя сравнить с ключами, находящимися в данный момент в карте. -
NullPointerException— еслиfromKeyилиtoKeyравно null -
IllegalArgumentException— еслиfromKeyбольшеtoKey; или если диапазон самой карты ограничен иfromKeyилиtoKeyнаходится за его границами
headMap
public ConcurrentNavigableMap<K,V> headMap(K toKey, boolean inclusive)
NavigableMapinclusive равно true) toKey. Возвращаемая карта связана с этой картой, поэтому изменения в возвращаемой карте отражаются в этой карте, и наоборот. Возвращаемая карта поддерживает все необязательные операции с картой, поддерживаемые этой картой. При попытке вставить ключ за пределами диапазона возвращаемая карта вызовет IllegalArgumentException.
- Указано в:
-
headMapв интерфейсеConcurrentNavigableMap<K,V> - Указано в:
-
headMapв интерфейсеNavigableMap<K,V> - Параметры:
-
toKey— верхняя граница ключей возвращаемой карты -
inclusive—true, если верхнюю границу необходимо включить в возвращаемое представление - Возвращает:
- представление части этой карты, ключи которой меньше (или равны, если
inclusiveравно true)toKey - Вызывает исключение:
-
ClassCastException— еслиtoKeyнесовместим с компаратором этой карты (или, если у карты нет компаратора, еслиtoKeyне реализуетComparable). Реализации могут, но не обязаны, вызывать это исключение, еслиtoKeyнельзя сравнить с ключами, находящимися в данный момент в карте. -
NullPointerException— еслиtoKeyравно null -
IllegalArgumentException— если диапазон самой карты ограничен иtoKeyнаходится за его границами
tailMap
public ConcurrentNavigableMap<K,V> tailMap(K fromKey, boolean inclusive)
NavigableMapinclusive равно true) fromKey. Возвращаемая карта связана с этой картой, поэтому изменения в возвращаемой карте отражаются в этой карте, и наоборот. Возвращаемая карта поддерживает все необязательные операции с картой, поддерживаемые этой картой. При попытке вставить ключ за пределами диапазона возвращаемая карта вызовет IllegalArgumentException.
- Указано в:
-
tailMapв интерфейсеConcurrentNavigableMap<K,V> - Указано в:
-
tailMapв интерфейсеNavigableMap<K,V> - Параметры:
-
fromKey— нижняя граница ключей возвращаемой карты -
inclusive—true, если нижнюю границу необходимо включить в возвращаемое представление - Возвращает:
- представление части этой карты, ключи которой больше (или равны, если
inclusiveравно true)fromKey - Вызывает исключение:
-
ClassCastException— еслиfromKeyнесовместим с компаратором этой карты (или, если у карты нет компаратора, еслиfromKeyне реализуетComparable). Реализации могут, но не обязаны, вызывать это исключение, еслиfromKeyнельзя сравнить с ключами, находящимися в данный момент в карте. -
NullPointerException— еслиfromKeyравно null -
IllegalArgumentException— если диапазон самой карты ограничен иfromKeyнаходится за его границами
subMap
public ConcurrentNavigableMap<K,V> subMap(K fromKey, K toKey)
NavigableMapfromKey включительно до toKey исключительно. (Если fromKey и toKey равны, возвращаемая карта пуста.) Возвращаемая карта связана с этой картой, поэтому изменения в возвращаемой карте отражаются в этой карте, и наоборот. Возвращаемая карта поддерживает все необязательные операции с картой, поддерживаемые этой картой. При попытке вставить ключ за пределами диапазона возвращаемая карта вызовет IllegalArgumentException.
Эквивалентно subMap(fromKey, true, toKey, false).
- Указано в:
-
subMapв интерфейсеConcurrentNavigableMap<K,V> - Указано в:
-
subMapв интерфейсеNavigableMap<K,V> - Указано в:
-
subMapв интерфейсеSortedMap<K,V> - Параметры:
-
fromKey— нижняя граница (включительно) ключей возвращаемой карты -
toKey— верхняя граница (исключительно) ключей возвращаемой карты - Возвращает:
- представление части этой карты, ключи которой находятся в диапазоне от
fromKeyвключительно доtoKeyисключительно - Вызывает исключение:
-
ClassCastException— еслиfromKeyиtoKeyнельзя сравнить друг с другом с помощью компаратора этой карты (или, если у карты нет компаратора, с помощью естественного порядка). Реализации могут, но не обязаны, вызывать это исключение, еслиfromKeyилиtoKeyнельзя сравнить с ключами, находящимися в данный момент в карте. -
NullPointerException— еслиfromKeyилиtoKeyравно null -
IllegalArgumentException— еслиfromKeyбольшеtoKey; или если диапазон самой карты ограничен иfromKeyилиtoKeyнаходится за его границами
headMap
public ConcurrentNavigableMap<K,V> headMap(K toKey)
NavigableMaptoKey. Возвращаемая карта связана с этой картой, поэтому изменения в возвращаемой карте отражаются в этой карте, и наоборот. Возвращаемая карта поддерживает все необязательные операции с картой, поддерживаемые этой картой. При попытке вставить ключ за пределами диапазона возвращаемая карта вызовет IllegalArgumentException.
Эквивалентно headMap(toKey, false).
- Указано в:
-
headMapв интерфейсеConcurrentNavigableMap<K,V> - Указано в:
-
headMapв интерфейсеNavigableMap<K,V> - Указано в:
-
headMapв интерфейсеSortedMap<K,V> - Параметры:
-
toKey— верхняя граница (исключительно) ключей возвращаемой карты - Возвращает:
- представление части этой карты, ключи которой строго меньше
toKey - Вызывает исключение:
-
ClassCastException— еслиtoKeyнесовместим с компаратором этой карты (или, если у карты нет компаратора, еслиtoKeyне реализуетComparable). Реализации могут, но не обязаны, вызывать это исключение, еслиtoKeyнельзя сравнить с ключами, находящимися в данный момент в карте. -
NullPointerException— еслиtoKeyравно null -
IllegalArgumentException— если диапазон самой карты ограничен иtoKeyнаходится за его границами
tailMap
public ConcurrentNavigableMap<K,V> tailMap(K fromKey)
NavigableMapfromKey. Возвращаемая карта связана с этой картой, поэтому изменения в возвращаемой карте отражаются в этой карте, и наоборот. Возвращаемая карта поддерживает все необязательные операции с картой, поддерживаемые этой картой. При попытке вставить ключ за пределами диапазона возвращаемая карта вызовет IllegalArgumentException.
Эквивалентно tailMap(fromKey, true).
- Указано в:
-
tailMapв интерфейсеConcurrentNavigableMap<K,V> - Указано в:
-
tailMapв интерфейсеNavigableMap<K,V> - Указано в:
-
tailMapв интерфейсеSortedMap<K,V> - Параметры:
-
fromKey— нижняя граница (включительно) ключей возвращаемой карты - Возвращает:
- представление части этой карты, ключи которой больше или равны
fromKey - Вызывает исключение:
-
ClassCastException— еслиfromKeyнесовместим с компаратором этой карты (или, если у карты нет компаратора, еслиfromKeyне реализуетComparable). Реализации могут, но не обязаны, вызывать это исключение, еслиfromKeyнельзя сравнить с ключами, находящимися в данный момент в карте. -
NullPointerException— еслиfromKeyравно null -
IllegalArgumentException— если диапазон самой карты ограничен иfromKeyнаходится за его границами
lowerEntry
public Map.Entry<K,V> lowerEntry(K key)
null, если такого ключа нет. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
lowerEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- запись с наибольшим ключом, меньшим
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
lowerKey
public K lowerKey(K key)
NavigableMapnull, если такого ключа нет.- Указано в:
-
lowerKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- наибольший ключ, меньший
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
floorEntry
public Map.Entry<K,V> floorEntry(K key)
null, если такого ключа нет. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
floorEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- запись с наибольшим ключом, меньшим или равным
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
floorKey
public K floorKey(K key)
NavigableMapnull, если такого ключа нет.- Указано в:
-
floorKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- наибольший ключ, меньший или равный
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
ceilingEntry
public Map.Entry<K,V> ceilingEntry(K key)
null, если такой записи нет. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
ceilingEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- запись с наименьшим ключом, большим или равным
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
ceilingKey
public K ceilingKey(K key)
NavigableMapnull, если такого ключа нет.- Указано в:
-
ceilingKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- наименьший ключ, больший или равный
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
higherEntry
public Map.Entry<K,V> higherEntry(K key)
null, если такого ключа нет. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
higherEntryв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- запись с наименьшим ключом, большим
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
higherKey
public K higherKey(K key)
NavigableMapnull, если такого ключа нет.- Указано в:
-
higherKeyв интерфейсеNavigableMap<K,V> - Параметры:
-
key— ключ - Возвращает:
- наименьший ключ, больший
key, илиnull, если такого ключа нет - Вызывает исключение:
-
ClassCastException— если указанный ключ нельзя сравнить с ключами, находящимися в данный момент в карте -
NullPointerException— если указанный ключ равен null
firstEntry
public Map.Entry<K,V> firstEntry()
null, если карта пуста. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
firstEntryв интерфейсеNavigableMap<K,V> - Указано в:
-
firstEntryв интерфейсеSequencedMap<K,V> - Возвращает:
- запись с наименьшим ключом или
null, если эта карта пуста
lastEntry
public Map.Entry<K,V> lastEntry()
null, если карта пуста. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
lastEntryв интерфейсеNavigableMap<K,V> - Указано в:
-
lastEntryв интерфейсеSequencedMap<K,V> - Возвращает:
- запись с наибольшим ключом или
null, если эта карта пуста
pollFirstEntry
public Map.Entry<K,V> pollFirstEntry()
null, если карта пуста. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
pollFirstEntryв интерфейсеNavigableMap<K,V> - Указано в:
-
pollFirstEntryв интерфейсеSequencedMap<K,V> - Возвращает:
- удалённая первая запись этой карты или
null, если эта карта пуста
pollLastEntry
public Map.Entry<K,V> pollLastEntry()
null, если карта пуста. Возвращаемая запись не поддерживает метод Entry.setValue.- Указано в:
-
pollLastEntryв интерфейсеNavigableMap<K,V> - Указано в:
-
pollLastEntryв интерфейсеSequencedMap<K,V> - Возвращает:
- удалённая последняя запись этой карты или
null, если эта карта пуста
© 1993, 2025, 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/25/docs/api/java.base/java/util/concurrent/ConcurrentSkipListMap.html