并发可导航映射接口



java.util.concurrent.ConcurrentNavigableMap 接口是 ConcurrentMap 接口的子接口,支持 NavigableMap 操作,并递归地支持其可导航子映射和近似匹配。

ConcurrentMap 方法

序号 方法和描述
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 为 true,则大于等于)fromKey。

示例

下面的 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"));
   }  
}

这将产生以下结果。

输出

Initial ConcurrentHashMap: {1 = One, 2 = Two, 3 = Three, 5 = Five, 6 = Six}
HeadMap("2") of ConcurrentHashMap: {1 = One}
TailMap("2") of ConcurrentHashMap: {2 = Two, 3 = Three, 5 = Five, 6 = Six}
SubMap("2", "4") of ConcurrentHashMap: {2 = Two, 3 = Three}
广告