K
- 由该地图维护的键的类型
V
- 映射值的类型
public interface ConcurrentNavigableMap<K,V> extends ConcurrentMap<K,V>, NavigableMap<K,V>
ConcurrentMap
支持NavigableMap
操作,并递归地为其可导航的子地图。
此接口是成员Java Collections Framework 。
Modifier and Type | Method and Description |
---|---|
NavigableSet<K> |
descendingKeySet()
返回此地图中包含的键的相反顺序 NavigableSet 。
|
ConcurrentNavigableMap<K,V> |
descendingMap()
返回此映射中包含的映射的反向排序视图。
|
ConcurrentNavigableMap<K,V> |
headMap(K toKey)
返回此地图部分的视图,其密钥严格小于
toKey 。
|
ConcurrentNavigableMap<K,V> |
headMap(K toKey, boolean inclusive)
返回此地图部分的视图,其键值小于(或等于,如果
inclusive 为真)
toKey 。
|
NavigableSet<K> |
keySet()
返回此地图中包含的键的 NavigableSet 视图。
|
NavigableSet<K> |
navigableKeySet()
返回此地图中包含的键的 NavigableSet 视图。
|
ConcurrentNavigableMap<K,V> |
subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
返回此地图部分的视图,其关键字范围为
fromKey 至
toKey 。
|
ConcurrentNavigableMap<K,V> |
subMap(K fromKey, K toKey)
返回此地图部分的视图,其关键字范围从
fromKey (含)到
toKey ,独占。
|
ConcurrentNavigableMap<K,V> |
tailMap(K fromKey)
返回此地图部分的视图,其键大于或等于
fromKey 。
|
ConcurrentNavigableMap<K,V> |
tailMap(K fromKey, boolean inclusive)
返回此地图部分的视图,其键大于(或等于,如果
inclusive 为真)
fromKey 。
|
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
ceilingEntry, ceilingKey, firstEntry, floorEntry, floorKey, higherEntry, higherKey, lastEntry, lowerEntry, lowerKey, pollFirstEntry, pollLastEntry
ConcurrentNavigableMap<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
如果
true
低端点包括在返回的视图中
toKey
- 返回地图中的键的高端点
toInclusive
-
true
如果高端点要包含在返回的视图中
fromKey
到
toKey
ClassCastException
- 如果fromKey
和toKey
无法使用该地图的比较器相互比较(或者,如果地图没有比较器,则使用自然排序)。
如果fromKey
或toKey
无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException
- 如果
fromKey
或
toKey
为空,并且此映射不允许空键
IllegalArgumentException
- 如果fromKey
大于toKey
;
或者如果该地图本身具有有限的范围,并且fromKey
或toKey
位于范围的范围之外
ConcurrentNavigableMap<K,V> headMap(K toKey, boolean inclusive)
NavigableMap
复制
inclusive
为真) toKey
。
返回的地图由此地图支持,因此返回的地图中的更改将反映在该地图中,反之亦然。
返回的地图支持该地图支持的所有可选地图操作。
返回的地图会抛出一个IllegalArgumentException
,试图在其范围之外插入一个键。
headMap
在界面
NavigableMap<K,V>
toKey
- 返回地图中的键的高端点
inclusive
-
true
如果高端点要包含在返回的视图中
inclusive
为真)
toKey
ClassCastException
- 如果toKey
与此地图的toKey
器不兼容(或者如果地图没有比较器,如果toKey
不实现Comparable
)。
如果toKey
无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException
- 如果
toKey
为空,并且此映射不允许空键
IllegalArgumentException
- 如果此地图本身有限制范围,并且
toKey
位于范围范围之外
ConcurrentNavigableMap<K,V> tailMap(K fromKey, boolean inclusive)
NavigableMap
复制
inclusive
为真) fromKey
。
返回的地图由此地图支持,因此返回的地图中的更改将反映在该地图中,反之亦然。
返回的地图支持该地图支持的所有可选地图操作。
返回的地图会抛出一个IllegalArgumentException
,试图在其范围之外插入一个键。
tailMap
在界面
NavigableMap<K,V>
fromKey
- 返回地图中键的低端点
inclusive
-
true
如果
true
低端点包括在返回的视图中)
inclusive
为真)
fromKey
ClassCastException
- 如果fromKey
与此地图的fromKey
器不兼容(或者如果地图没有比较器,如果fromKey
不实现Comparable
)。
如果fromKey
无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException
- 如果
fromKey
为空,并且该地图不允许空值
IllegalArgumentException
- 如果此地图本身有限制范围,并且
fromKey
位于范围的范围之外
ConcurrentNavigableMap<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
为空,并且此映射不允许空键
IllegalArgumentException
- 如果fromKey
大于toKey
;
或者如果此地图本身具有限制范围,并且fromKey
或toKey
位于范围范围之外
ConcurrentNavigableMap<K,V> headMap(K toKey)
NavigableMap
复制
toKey
。
返回的地图由此地图支持,因此返回的地图中的更改将反映在该地图中,反之亦然。
返回的地图支持该地图支持的所有可选地图操作。
返回的地图会抛出一个IllegalArgumentException
,试图在其范围之外插入一个键。
相当于headMap(toKey, false)
。
headMap
在界面
NavigableMap<K,V>
headMap
在界面
SortedMap<K,V>
toKey
- 返回地图中的键的高端点(独占)
toKey
ClassCastException
- 如果toKey
与此地图的toKey
器不兼容(或者如果地图没有比较器,如果toKey
不实现Comparable
)。
如果toKey
无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException
- 如果
toKey
为空,并且此映射不允许空键
IllegalArgumentException
- 如果这张地图本身有一个有限的范围,而
toKey
位于范围的范围之外
ConcurrentNavigableMap<K,V> tailMap(K fromKey)
NavigableMap
复制
fromKey
。
返回的地图由此地图支持,因此返回的地图中的更改将反映在该地图中,反之亦然。
返回的地图支持该地图支持的所有可选地图操作。
返回的地图将扔一个IllegalArgumentException
尝试在其范围之外插入一个键。
相当于tailMap(fromKey, true)
。
tailMap
在界面
NavigableMap<K,V>
tailMap
在接口
SortedMap<K,V>
fromKey
- 返回地图中键的低端点(含)
fromKey
ClassCastException
- 如果fromKey
与此地图的fromKey
器不兼容(或者如果地图没有比较器,如果fromKey
不实现Comparable
)。
如果fromKey
无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException
- 如果
fromKey
为空,并且此映射不允许空值
IllegalArgumentException
- 如果这个地图本身有一个限制的范围,而
fromKey
位于范围的范围之外
ConcurrentNavigableMap<K,V> descendingMap()
返回的地图的订单等价于Collections.reverseOrder
(comparator())
。 表达式m.descendingMap().descendingMap()
返回m.descendingMap().descendingMap()
的视图, m
相当于m
。
descendingMap
在界面
NavigableMap<K,V>
NavigableSet<K> navigableKeySet()
NavigableSet
视图。
该集合的迭代器按升序返回密钥。
该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。
该组支持元件移除,即从映射中相应的映射,经由Iterator.remove
, Set.remove
, removeAll
, retainAll
和clear
操作。
它不支持add
或addAll
操作。
视图的迭代器和拼接器是weakly consistent 。
navigableKeySet
在界面
NavigableMap<K,V>
NavigableSet<K> keySet()
NavigableSet
视图。
该集合的迭代器按升序返回密钥。
该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。
该组支持元件移除,即从映射中相应的映射,经由Iterator.remove
, Set.remove
, removeAll
, retainAll
和clear
操作。
它不支持add
或addAll
操作。
视图的迭代器和拼接器是weakly consistent 。
该方法相当于方法navigableKeySet
。
NavigableSet<K> descendingKeySet()
NavigableSet
。
集合的迭代器按降序返回密钥。
该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。
该组支持元件移除,即从映射中相应的映射,经由Iterator.remove
, Set.remove
, removeAll
, retainAll
和clear
操作。
它不支持add
或addAll
操作。
视图的迭代器和拼接器是weakly consistent 。
descendingKeySet
中的
NavigableMap<K,V>
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.