Witam
Piszę metodę sortującą mi TreeMapę po wartości (domyślnie jest sortowana po kluczu). Najpierw kopiuję wszystkie wartości do vector'a, tam sortuję i chciałem teraz na podstawie znalezionego klucza z powrotem umieścić je w odpowiedniej kolejności do TreeMapy.
public TreeMap<String, Long> sortByValues(final Map<String, Long> map) {
TreeMap<String, Long> sorted = new TreeMap<String, Long>();
Vector<Long> step = new Vector<Long>();
for (Map.Entry<String, Long> entry : map.entrySet())
step.add(entry.getValue());
Collections.sort(step);
Iterator iterator;
iterator = step.iterator();
while(iterator.hasNext()) {
String key;
//key = map.getKey; <-------------tu nie wiem
sorted.put(key, (Long)iterator.next());
}
return sorted;
}
Nie wiem jak dla konkretnej wartości zwrócić klucz (zaznaczyłem moment w kodzie).
Proszę o pomoc.
Pozdr.