The firstKey() and lastKey() methods of TreeMap let you quickly access the keys at the end of the map.
If you need to traverse a map backwards(keep getting the last key and the head map before it):
import java.util.TreeMap;
public class MainClass {
public static void main(String[] a) {
TreeMap map = new TreeMap();
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");
if (!map.isEmpty()) {
Object last = map.lastKey();
boolean first = true;
do {
if (!first) {
System.out.print(", ");
}
System.out.print(last);
last = map.headMap(last).lastKey();
first = false;
} while (last != map.firstKey());
System.out.println();
}
}
}
key3, key2