Java併發ConcurrentNavigableMap介面

java.util.concurrent.ConcurrentNavigableMap介面是ConcurrentMap介面的子介面,並且支持NavigableMap操作,並且對其可導航子映射和近似匹配進行遞歸。

ConcurrentNavigableMap介面中的方法

序號 方法 描述
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) 返回該映射的部分視圖,其鍵值小於(或等於,如果包含值為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) 返回此映射部分的視圖,其鍵範圍從fromKeytoKey
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) 從映射返回一個鍵大於(或等於,包含值為true)部分的視圖。

實例

以下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}

上一篇: Java併發ConcurrentMap介面 下一篇:無