Java - Comment obtenir une sublist de TreeMap
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()
SortedMapsubM = 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