Самое простое решение - использовать TreeMultimap из гуавы. Используйте либо напрямую
TreeMultimap<...> sortedMap = TreeMultimap.create(notSortedMultiMap);
, если ваши ключи и значения можно сортировать естественным образом (реализовать Comparable), или
TreeMultimap<...> sortedMap = TreeMultimap.create(keyComparator, valueComparator);
sortedMap.putAll(notSortedMultiMap);
, если вам нужно предоставить пользовательские компараторы.
Если вы знаете, что вам нужно его отсортировать, и вам не нужна скорость поиска, вы, конечно, можете использовать TreeMap с самого начала.
Затем вы можете перебирать TreeMap или использовать что-то вроде values () или записи, чтобы получить отсортированную коллекцию.