Sortierung absteigende Sortierung: Java Map

Was ich tun möchte, ist sozusagen eine Karte von Wert. Ich ging über viele Fragen, die verfügbar sind auf stackoverflow Stelle und fand sich folgende Lösung, die tut, was ich will, jedoch fehlt eine kleine Sache.

Link1: Sortierung Anzeigen

Aber das Problem habe ich ist, dies ist standardmäßig sortiert nach aufsteigender Reihenfolge von Wert. Ich möchte, um es in absteigender Reihenfolge:

Also, was ich Tat, war ich eine Klasse angelegt, die einen Komparator

class MyComparator implements Comparator {
    Map map;
    public MyComparator(Map map) {
        this.map = map;
    }
    public int compare(Object o1, Object o2) {
        return ((Integer) map.get(o2)).compareTo((Integer) map.get(o1));
    }
}

Und dann gebe ich meine Karte zu der treemap,

MyComparator comp = new MyComparator(myMap);
Map<String, Integer> newMap = new TreeMap(comp);
newMap.putAll(myMap);

Dies scheint schlechter Ansatz, weil ich glaube, das ist ineffizient. Gibt es eine Möglichkeit, ändern Sie die Lösung in dem link zu bestellen auf absteigender Reihenfolge standardmäßig.

InformationsquelleAutor der Frage Null-Hypothesis | 2013-09-20

Schreibe einen Kommentar