Dans l'exemple ci-dessous on va voir comment obtenir à partir d'une TreeMap une nouvelle sous TreeMap triée en utilisant la méthode subMap() de la classe TreeMap.
subMap(K fromKey, K toKey)
Exemple:
import java.util.*; class TreeMapSub { public static void main(String args[]) { TreeMaptreemap = new TreeMap (); // elements treemap.put("a", "e4"); treemap.put("b", "e5"); treemap.put("c", "e1"); treemap.put("d", "e3"); treemap.put("e", "e2"); System.out.println("Avant:"); /* parcourir la TreeMap non triée avec Iterator */ Set set = treemap.entrySet(); Iterator i = set.iterator(); // Afficher les éléments while(i.hasNext()) { Map.Entry entry = (Map.Entry)i.next(); System.out.print(entry.getKey() + " : "); System.out.println(entry.getValue()); } System.out.println("Après:"); // appeler la méthode subMap() SortedMap subM = treemap.subMap("a","d"); /* parcourir la sous map avec Iterator */ set = subM.entrySet(); i = set.iterator(); // Afficher les éléments while(i.hasNext()) { Map.Entry entry = (Map.Entry)i.next(); System.out.print(entry.getKey() + " : "); System.out.println(entry.getValue()); } } }
Exécution
Avant: a : e4 b : e5 c : e1 d : e3 e : e2 Après: a : e4 b : e5 c : e1
Références
java.util.TreeMap.subMap() Method