Interfaccia ConcurrentNavigableMap

Un'interfaccia java.util.concurrent.ConcurrentNavigableMap è una sottointerfaccia dell'interfaccia ConcurrentMap e supporta le operazioni NavigableMap e in modo ricorsivo per le sue mappe secondarie navigabili e le corrispondenze approssimative.

Metodi ConcurrentMap

Sr.No. Metodo e descrizione
1

NavigableSet<K> descendingKeySet()

Restituisce una visualizzazione NavigableSet in ordine inverso delle chiavi contenute in questa mappa.

2

ConcurrentNavigableMap<K,V> descendingMap()

Restituisce una vista in ordine inverso delle mappature contenute in questa mappa.

3

ConcurrentNavigableMap<K,V> headMap(K toKey)

Restituisce una visualizzazione della porzione di questa mappa le cui chiavi sono strettamente inferiori a toKey.

4

ConcurrentNavigableMap<K,V> headMap(K toKey, boolean inclusive)

Restituisce una visualizzazione della parte di questa mappa le cui chiavi sono minori di (o uguali a, se inclusive è vero) toKey.

5

NavigableSet<K> keySet()

Restituisce una vista NavigableSet delle chiavi contenute in questa mappa.

6

NavigableSet<K> navigableKeySet()

Restituisce una vista NavigableSet delle chiavi contenute in questa mappa.

7

ConcurrentNavigableMap<K,V> subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)

Restituisce una visualizzazione della parte di questa mappa le cui chiavi vanno da fromKey a toKey.

8

ConcurrentNavigableMap<K,V> subMap(K fromKey, K toKey)

Restituisce una visualizzazione della parte di questa mappa le cui chiavi vanno da fromKey, inclusive, a toKey, exclusive.

9

ConcurrentNavigableMap<K,V> tailMap(K fromKey)

Restituisce una visualizzazione della parte di questa mappa le cui chiavi sono maggiori o uguali a fromKey.

10

ConcurrentNavigableMap<K,V> tailMap(K fromKey, boolean inclusive)

Restituisce una vista della parte di questa mappa le cui chiavi sono maggiori di (o uguali a, se inclusive è vero) fromKey.

Esempio

Il seguente programma TestThread mostra l'utilizzo di 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"));
   }  
}

Questo produrrà il seguente risultato.

Produzione

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}