Java Concurrency 简明教程
ConcurrentNavigableMap Interface
一个 java.util.concurrent.ConcurrentNavigableMap 接口是 ConcurrentMap 接口的子接口,并且支持 NavigableMap 操作,以及对其可导航子映射和近似匹配进行递归操作。
ConcurrentMap Methods
Sr.No. |
Method & Description |
1 |
NavigableSet<K> descendingKeySet() 返回此映射中包含的键的反向顺序 NavigableSet 视图。 |
2 |
ConcurrentNavigableMap<K,V> descendingMap() 返回此映射中包含的映射的反向顺序视图。 |
3 |
ConcurrentNavigableMap<K,V> headMap(K toKey) 返回此映射的键严格小于 toKey 的部分视图。 |
4 |
ConcurrentNavigableMap<K,V> headMap(K toKey, boolean inclusive) 返回此映射的键小于(或等于,如果 inclusive 为 true)toKey 的部分视图。 |
5 |
NavigableSet<K> keySet() 返回此映射中包含的键的 NavigableSet 视图。 |
6 |
NavigableSet<K> navigableKeySet() 返回此映射中包含的键的 NavigableSet 视图。 |
7 |
ConcurrentNavigableMap<K,V> subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive) 返回此映射的键范围从 fromKey 到 toKey 的部分视图。 |
8 |
ConcurrentNavigableMap<K,V> subMap(K fromKey, K toKey) 返回此地图一部分的视图,其键值从 fromKey(包括)到 toKey(不包括)。 |
9 |
ConcurrentNavigableMap<K,V> tailMap(K fromKey) 返回此地图一部分的视图,其键值大于或等于 fromKey。 |
10 |
ConcurrentNavigableMap<K,V> tailMap(K fromKey, boolean inclusive) 返回此地图一部分的视图,其键值大于(或等于,如果 inclusive 为真)fromKey。 |
Example
以下 TestThread 程序演示了 ConcurrentNavigableMap 的用法。
import java.util.concurrent.ConcurrentNavigableMap;
import java.util.concurrent.ConcurrentSkipListMap;
public class TestThread {
public static void main(final String[] arguments) {
ConcurrentNavigableMap<String,String> map =
new ConcurrentSkipListMap<String, String>();
map.put("1", "One");
map.put("2", "Two");
map.put("3", "Three");
map.put("5", "Five");
map.put("6", "Six");
System.out.println("Initial ConcurrentHashMap: "+map);
System.out.println("HeadMap(\"2\") of ConcurrentHashMap: "+map.headMap("2"));
System.out.println("TailMap(\"2\") of ConcurrentHashMap: "+map.tailMap("2"));
System.out.println(
"SubMap(\"2\", \"4\") of ConcurrentHashMap: "+map.subMap("2","4"));
}
}
这将产生以下结果。