
- Java併發教程
- 併發 - 首頁
- 併發 - 概述
- 併發 - 環境設定
- 併發 - 主要操作
- 執行緒間通訊
- 併發 - 同步
- 併發 - 死鎖
- 實用類示例
- 併發 - ThreadLocal
- 併發 - ThreadLocalRandom
- 鎖示例
- 併發 - 鎖
- 併發 - 讀寫鎖
- 併發 - 條件
- 原子變數示例
- 併發 - AtomicInteger
- 併發 - AtomicLong
- 併發 - AtomicBoolean
- 併發 - AtomicReference
- 併發 - AtomicIntegerArray
- 併發 - AtomicLongArray
- 併發 - AtomicReferenceArray
- 執行器示例
- 併發 - Executor
- 併發 - ExecutorService
- ScheduledExecutorService
- 執行緒池示例
- 併發 - newFixedThreadPool
- 併發 - newCachedThreadPool
- newScheduledThreadPool
- newSingleThreadExecutor
- 併發 - ThreadPoolExecutor
- ScheduledThreadPoolExecutor
- 高階示例
- 併發 - Futures 和 Callables
- 併發 - Fork-Join 框架
- 併發集合
- 併發 - BlockingQueue
- 併發 - ConcurrentMap
- 併發可導航對映
- 併發實用資源
- 併發 - 快速指南
- 併發 - 有用資源
- 併發 - 討論
併發可導航對映介面
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}