K - 由该地图维护的键的类型
V - 映射值的类型
public class TreeMap<K,V> extends AbstractMap<K,V> implements NavigableMap<K,V>, Cloneable, Serializable
NavigableMap实现。
该地图是根据排序natural ordering其密钥,或通过Comparator在地图创建时提供,这取决于所使用的构造方法。
此实现提供了保证的log(n)时间成本containsKey , get , put和remove操作。 算法是Cormen,Leiserson和Rivest的算法介绍中的算法的适应性 。
请注意,如果这个排序的映射要正确地实现Map接口,那么由树映射维护的排序(如任何排序的映射)以及是否提供显式比较器都必须与equals Map一致。 (参见Comparable或Comparator为一致的精确定义与equals)。这是因为该Map接口在来定义equals的操作,但一个排序映射使用它所有的键比较compareTo (或compare )方法,于是两个从排序图的角度来说,通过该方法认为相等的键是相等的。 排序地图的行为是明确定义的,即使其排序与equals ; 它只是没有遵守Map界面的总体合同。
请注意,此实现不同步。 如果多个线程同时访问映射,并且至少一个线程在结构上修改映射,则必须在外部进行同步。 (结构修改是添加或删除一个或多个映射的任何操作;仅改变与现有密钥相关联的值不是结构修改。)这通常通过对自然封装映射的一些对象进行同步来实现。 如果没有这样的对象存在,应该使用Collections.synchronizedSortedMap方法“包装”地图。 这最好在创建时完成,以防止意外的不同步访问地图:
SortedMap m = Collections.synchronizedSortedMap(new TreeMap(...));
由这个类的“集合视图方法”返回的iterator方法返回的迭代器是故障快速的 :如果映射在迭代器创建之后的任何时间被结构地修改,除了通过迭代器自己的remove方法,迭代器会抛出一个ConcurrentModificationException 。 因此,面对并发修改,迭代器将快速而干净地失败,而不是在未来未确定的时间冒着任意的非确定性行为。
请注意,迭代器的故障快速行为无法保证,因为一般来说,在不同步并发修改的情况下,无法做出任何硬性保证。 失败快速的迭代器尽力投入ConcurrentModificationException 。 因此,编写依赖于此异常的程序的正确性将是错误的:迭代器的故障快速行为应仅用于检测错误。
通过此类中的方法返回的所有Map.Entry对,其视图表示生成时映射的快照。 他们不支持Entry.setValue方法。 (请注意,可以使用put更改关联地图中的put 。)
Map , HashMap , Hashtable , Comparable , Comparator , Collection , Serialized Form
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>| Constructor and Description |
|---|
TreeMap()
使用其键的自然排序构造一个新的空树状图。
|
TreeMap(Comparator<? super K> comparator)
构造一个新的,空的树图,按照给定的比较器排序。
|
TreeMap(Map<? extends K,? extends V> m)
构造一个新的树状图,其中包含与给定地图相同的映射,根据其键的
自然顺序进行排序 。
|
TreeMap(SortedMap<K,? extends V> m)
构造一个包含相同映射并使用与指定排序映射相同顺序的新树映射。
|
| Modifier and Type | Method and Description |
|---|---|
Map.Entry<K,V> |
ceilingEntry(K key)
返回与大于或等于给定键的最小键相关联的键值映射,如果没有此键,则
null 。
|
K |
ceilingKey(K key)
返回大于或等于给定键的
null键,如果没有此键,则返回
null 。
|
void |
clear()
从这张地图中删除所有的映射。
|
Object |
clone()
返回此
TreeMap实例的浅拷贝。
|
Comparator<? super K> |
comparator()
返回用于订购此地图中的键的比较器,或 null如果此地图使用其键的natural ordering 。
|
boolean |
containsKey(Object key)
如果此映射包含指定键的映射,则返回
true 。
|
boolean |
containsValue(Object value)
如果此地图将一个或多个键映射到指定值,则返回
true 。
|
NavigableSet<K> |
descendingKeySet()
返回此地图中包含的键的相反顺序 NavigableSet 。
|
NavigableMap<K,V> |
descendingMap()
返回此映射中包含的映射的反向排序视图。
|
Set<Map.Entry<K,V>> |
entrySet()
返回此地图中包含的映射的 Set视图。
|
Map.Entry<K,V> |
firstEntry()
返回与该地图中的最小键相关联的键值映射,如果地图为空,则返回
null 。
|
K |
firstKey()
返回此地图中当前的第一个(最低)键。
|
Map.Entry<K,V> |
floorEntry(K key)
返回与小于或等于给定键的最大键相关联的键值映射,如果没有此键,则
null 。
|
K |
floorKey(K key)
返回小于或等于给定键的最大键,如果没有这样的键,则返回
null 。
|
void |
forEach(BiConsumer<? super K,? super V> action)
对此映射中的每个条目执行给定的操作,直到所有条目都被处理或操作引发异常。
|
V |
get(Object key)
返回到指定键所映射的值,或
null如果此映射包含该键的映射。
|
SortedMap<K,V> |
headMap(K toKey)
返回此地图部分的视图,其密钥严格小于
toKey 。
|
NavigableMap<K,V> |
headMap(K toKey, boolean inclusive)
返回此地图部分的视图,其键值小于(或等于,如果
inclusive为真)
toKey 。
|
Map.Entry<K,V> |
higherEntry(K key)
返回与最小密钥相关联的密钥值映射严格大于给定密钥,如果没有这样的密钥则
null 。
|
K |
higherKey(K key)
返回严格大于给定键的最小键,如果没有这样的键,则返回
null 。
|
Set<K> |
keySet()
返回此地图中包含的键的 Set视图。
|
Map.Entry<K,V> |
lastEntry()
返回与该地图中最大关键字关联的键值映射,如果地图为空,则返回
null 。
|
K |
lastKey()
返回当前在此地图中的最后(最高)键。
|
Map.Entry<K,V> |
lowerEntry(K key)
返回与最大密钥相关联的密钥值映射严格小于给定密钥,如果没有这样的密钥,则
null 。
|
K |
lowerKey(K key)
返回严格小于给定键的最大键,如果没有这样的键,则返回
null 。
|
NavigableSet<K> |
navigableKeySet()
返回此地图中包含的键的 NavigableSet视图。
|
Map.Entry<K,V> |
pollFirstEntry()
删除并返回与该地图中的最小键相关联的键值映射,如果地图为空,则返回
null 。
|
Map.Entry<K,V> |
pollLastEntry()
删除并返回与该地图中最大密钥相关联的键值映射,如果地图为空,则返回
null 。
|
V |
put(K key, V value)
将指定的值与此映射中的指定键相关联。
|
void |
putAll(Map<? extends K,? extends V> map)
将指定地图的所有映射复制到此地图。
|
V |
remove(Object key)
从此TreeMap中删除此键的映射(如果存在)。
|
V |
replace(K key, V value)
只有当目标映射到某个值时,才能替换指定键的条目。
|
boolean |
replace(K key, V oldValue, V newValue)
仅当当前映射到指定的值时,才能替换指定键的条目。
|
void |
replaceAll(BiFunction<? super K,? super V,? extends V> function)
将每个条目的值替换为对该条目调用给定函数的结果,直到所有条目都被处理或该函数抛出异常。
|
int |
size()
返回此地图中键值映射的数量。
|
NavigableMap<K,V> |
subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
返回此地图部分的视图,其关键范围为
fromKey至
toKey 。
|
SortedMap<K,V> |
subMap(K fromKey, K toKey)
返回此地图部分的视图,其关键字范围从
fromKey (含)到
toKey ,独占。
|
SortedMap<K,V> |
tailMap(K fromKey)
返回此地图部分的视图,其键大于等于
fromKey 。
|
NavigableMap<K,V> |
tailMap(K fromKey, boolean inclusive)
返回此地图部分的视图,其键大于(或等于,如果
inclusive为真)
fromKey 。
|
Collection<V> |
values()
返回此地图中包含的值的 Collection视图。
|
equals, hashCode, isEmpty, toStringfinalize, getClass, notify, notifyAll, wait, wait, waitcompute, computeIfAbsent, computeIfPresent, equals, getOrDefault, hashCode, isEmpty, merge, putIfAbsent, removepublic TreeMap()
Comparable界面。
此外,所有这些密钥必须是相互可比的 : k1.compareTo(k2)不能为ClassCastException中的任何键k1和k2 。
如果用户试图将一个键放入违反该约束的地图中(例如,用户尝试将一个字符串键放入一个键为整数的地图中),则put(Object key, Object value)调用将抛出ClassCastException 。
public TreeMap(Comparator<? super K> comparator)
comparator.compare(k1, k2)不得为ClassCastException中的任何键k1和k2 。
如果用户试图将一个键放入地图中,违反此约束,则put(Object key, Object value)调用将抛出ClassCastException 。
comparator - 将用于订购此地图的比较器。
如果null ,则使用natural ordering的按键。
public TreeMap(Map<? extends K,? extends V> m)
Comparable界面。
此外,所有这些密钥必须是相互可比的 : k1.compareTo(k2)不能为ClassCastException中的任何键k1和k2 。
此方法运行在n * log(n)时间。
m - 其映射将放置在此映射中的映射
ClassCastException - 如果m中的键不是Comparable ,或者不相互比较
NullPointerException - 如果指定的地图为空
public TreeMap(SortedMap<K,? extends V> m)
m - 其映射将被放置在该映射中的排序映射,并且其比较器将用于对该映射进行排序
NullPointerException - 如果指定的地图为空
public int size()
public boolean containsKey(Object key)
true 。
containsKey在界面
Map<K,V>
containsKey在类别
AbstractMap<K,V>
key - 要在此地图中存在的密钥要进行测试
true如果此映射包含指定键的映射
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,并且此映射使用自然排序,或者其比较器不允许空键
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否则
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 - 如果指定的键为空,并且该映射使用自然排序,或者其比较器不允许空键
public Comparator<? super K> comparator()
SortedMap复制
null如果此地图使用其键的natural ordering 。
comparator在界面
SortedMap<K,V>
null如果该地图使用其键的自然排序
public K firstKey()
SortedMap复制
firstKey在界面
SortedMap<K,V>
NoSuchElementException - 如果
NoSuchElementException空
public K lastKey()
SortedMap复制
lastKey在界面
SortedMap<K,V>
NoSuchElementException - 如果这张地图是空的
public void putAll(Map<? extends K,? extends V> map)
putAll在界面
Map<K,V>
putAll在类别
AbstractMap<K,V>
map - 要存储在此地图中的映射
ClassCastException - 如果指定地图中的键或值的类别阻止其存储在此映射中
NullPointerException - 如果指定的映射为空或指定的映射包含空键,并且此映射不允许空键
public V put(K key, V value)
put在界面
Map<K,V>
put在类别
AbstractMap<K,V>
key - 指定值与之关联的键
value - 与指定键相关联的值
key ,或null如果没有key映射。
(A null返回也可以指示以前关联的地图null与key )
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,此映射使用自然排序,或者其比较器不允许空键
public V remove(Object key)
remove在界面
Map<K,V>
remove在类别
AbstractMap<K,V>
key - 应该删除哪个映射的键
key ,或null如果没有key映射。
(A null返回也可以表示该地图之前关联的null与key )
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,并且该映射使用自然排序,或者其比较器不允许空值
public void clear()
public Object clone()
TreeMap实例的浅拷贝。
(键和值本身不被克隆。)
clone在类别
AbstractMap<K,V>
Cloneable
public Map.Entry<K,V> firstEntry()
NavigableMap复制
null 。
firstEntry在界面
NavigableMap<K,V>
null如果该地图为空
public Map.Entry<K,V> lastEntry()
NavigableMap复制
null 。
lastEntry在界面
NavigableMap<K,V>
null
public Map.Entry<K,V> pollFirstEntry()
NavigableMap复制
null 。
pollFirstEntry在界面
NavigableMap<K,V>
null空,
null
public Map.Entry<K,V> pollLastEntry()
NavigableMap复制
null 。
pollLastEntry在界面
NavigableMap<K,V>
null空,
null
public Map.Entry<K,V> lowerEntry(K key)
NavigableMap复制
null 。
lowerEntry在界面
NavigableMap<K,V>
key - 关键
key ,或
null如果没有这样的密钥
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,此映射使用自然排序,或者其比较器不允许空键
public K lowerKey(K key)
NavigableMap复制
null 。
lowerKey在界面
NavigableMap<K,V>
key - 关键
key ,否则
null如果没有这样的钥匙
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,并且该映射使用自然排序,或者其比较器不允许空键
public Map.Entry<K,V> floorEntry(K key)
NavigableMap复制
null 。
floorEntry在界面
NavigableMap<K,V>
key - 关键
key ,如果没有这样的密钥,
null
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,此映射使用自然排序,或者其比较器不允许空键
public K floorKey(K key)
NavigableMap复制
null 。
floorKey在界面
NavigableMap<K,V>
key - 关键
key ,或
null如果没有这样的钥匙
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,此映射使用自然排序,或者其比较器不允许空键
public Map.Entry<K,V> ceilingEntry(K key)
NavigableMap复制
null 。
ceilingEntry在接口
NavigableMap<K,V>
key - 关键
key ,或
null如果没有这样的键
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,并且该映射使用自然排序,或者其比较器不允许空键
public K ceilingKey(K key)
NavigableMap复制
null键,如果没有此键,则返回
null 。
ceilingKey在界面
NavigableMap<K,V>
key - 关键
key ,或
null如果没有这样的键
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,此映射使用自然排序,或者其比较器不允许空键
public Map.Entry<K,V> higherEntry(K key)
NavigableMap复制
null 。
higherEntry在界面
NavigableMap<K,V>
key - 关键
key ,或
null如果没有这样的键
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,此映射使用自然排序,或者其比较器不允许空键
public K higherKey(K key)
NavigableMap复制
null 。
higherKey在界面
NavigableMap<K,V>
key - 关键
key ,或
null如果没有这样的键
ClassCastException - 如果指定的键不能与当前在地图中的键进行比较
NullPointerException - 如果指定的键为空,此映射使用自然排序,或者其比较器不允许空值
public Set<K> keySet()
Set视图。
该集合的迭代器按升序返回密钥。 集合的分配器是late-binding , 失败快速 ,另外报告Spliterator.SORTED和Spliterator.ORDERED ,遇到订单是升序键顺序。 该spliterator的比较(见Spliterator.getComparator() )是null如果树映射的比较(见comparator() )是null 。 否则,拼接器的比较器与树形图的比较器相同或者施加相同的总排序。
该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。 如果在集合中的迭代过程中修改了映射(除了通过迭代器自己的remove之外),迭代的结果是未定义的。 该组支持元件移除,即从映射中相应的映射,经由Iterator.remove , Set.remove , removeAll , retainAll和clear操作。 它不支持add或addAll操作。
public NavigableSet<K> navigableKeySet()
NavigableMap复制
NavigableSet视图。
该集合的迭代器按升序返回密钥。
该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。
如果在集合中的迭代正在进行中修改映射(除了通过迭代器自己的remove操作),迭代的结果是未定义的。
该组支持元件移除,即从映射中相应的映射,经由Iterator.remove , Set.remove , removeAll , retainAll和clear操作。
它不支持add或addAll操作。
navigableKeySet在界面
NavigableMap<K,V>
public NavigableSet<K> descendingKeySet()
NavigableMap复制
NavigableSet 。
集合的迭代器按降序返回密钥。
该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。
如果在集合中的迭代正在进行中修改映射(除了通过迭代器自己的remove操作),迭代的结果是未定义的。
该组支持元件移除,即从映射中相应的映射,经由Iterator.remove , Set.remove , removeAll , retainAll和clear操作。
它不支持add或addAll操作。
descendingKeySet在界面
NavigableMap<K,V>
public Collection<V> values()
Collection查看此地图中包含的值。
集合的迭代器按照相应键的升序返回值。 集合的分配器为late-binding , 故障快速 ,另外报告Spliterator.ORDERED ,遇到订单是相应键的升序。
集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。 如果在集合中的迭代正在进行中修改映射(除了通过迭代器自己的remove操作),迭代的结果是未定义的。 该collection支持元素移除,即从映射中相应的映射,经由Iterator.remove , Collection.remove , removeAll , retainAll和clear操作。 它不支持add或addAll操作。
public Set<Map.Entry<K,V>> entrySet()
Set视图。
集合的迭代器按升序键顺序返回条目。 集合的分配器为late-binding , 故障快速 ,另外报告Spliterator.SORTED和Spliterator.ORDERED ,遇到订单是升序键顺序。
该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然。 如果在集合中的迭代正在进行中修改映射(除了通过迭代器自己的remove操作,或者通过迭代器返回的映射条目上的setValue操作),迭代的结果是未定义的。 该组支持元件移除,即从映射中相应的映射,经由Iterator.remove , Set.remove , removeAll , retainAll和clear操作。 它不支持add或addAll操作。
public NavigableMap<K,V> descendingMap()
NavigableMap复制
remove之外),否则修改了任一映射,则迭代的结果是未定义的。
返回的地图的订单等价于Collections.reverseOrder(comparator()) 。 表达式m.descendingMap().descendingMap()返回m.descendingMap().descendingMap()的视图, m相当于m 。
descendingMap在界面
NavigableMap<K,V>
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为空,此地图使用自然排序,或其比较不允许空键
IllegalArgumentException - 如果fromKey大于toKey ;
或者如果此地图本身具有限制范围,并且fromKey或toKey位于范围范围之外
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器不兼容(或者如果地图没有比较器,如果toKey不实现Comparable )。
如果toKey无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException - 如果
toKey为空,并且此映射使用自然排序,或其比较器不允许空键
IllegalArgumentException - 如果此地图本身具有限制范围,并且
toKey位于范围界限之外
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器不兼容(或者如果地图没有比较器,如果fromKey不实现Comparable )。
如果fromKey无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException - 如果
fromKey为空,并且该地图使用自然排序,或者其比较器不允许空键
IllegalArgumentException - 如果此地图本身有限制范围,并且
fromKey位于范围的范围之外
public SortedMap<K,V> subMap(K fromKey, K toKey)
NavigableMap复制
fromKey (含),不toKey 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位于范围的界限之外
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器不兼容(或者如果地图没有比较器,如果toKey不实现Comparable )。
如果toKey无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException - 如果
toKey为空,并且该地图使用自然排序,或者其比较器不允许空键
IllegalArgumentException - 如果此地图本身具有有限的范围,并且
toKey位于范围的范围之外
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器不兼容(或者如果地图没有比较器,如果fromKey不实现Comparable )。
如果fromKey无法与当前在地图中的键进行比较,则实施可能但不是必须抛出此异常。
NullPointerException - 如果
fromKey为空,并且该地图使用自然排序,或其比较器不允许空键
IllegalArgumentException - 如果该地图本身有限制范围,并且
fromKey位于范围界限之外
public void forEach(BiConsumer<? super K,? super V> action)
Map复制
public void replaceAll(BiFunction<? super K,? super V,? extends V> function)
Map复制
replaceAll在界面
Map<K,V>
function - 应用于每个条目的功能
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.