The code snippet provides a solution to sort the map in descending order.
public class NewClass1 {
public static void main(String[] args) throws IOException {
System.out.println("In Descending Order: ");
/* Compares the keys and sorts the map in descending order */
TreeMap map = new TreeMap(new Mycompare());
map.put("Key1", new ArrayList(Arrays.asList("K1V1", "K1V2", "K1V3")));
map.put("Key2", new ArrayList(Arrays.asList("K2V1", "K2V2", "K2V3")));
map.put("Key3", new ArrayList(Arrays.asList("K3V3", "K3V2", "K3V3")));
map.put("Key4", new ArrayList(Arrays.asList("K4V1", "K4V2", "K4V3")));
Iterator itr1 = map.entrySet().iterator();
/* To print the contents of the map */
while (itr1.hasNext()) {
Map.Entry keyValue = (Map.Entry) itr1.next();
System.out.println("Key: " + keyValue.getKey());
List value = (List) keyValue.getValue();
for (int i = 0; i < value.size(); i++) {
if (value != null) {
if (value.get(i) != null) {
System.out.println("Value: " + value.get(i));
}
}
}
}
}
}
class Mycompare implements Comparator {
public int compare(Object o1, Object o2)
{
String i1 = (String) o1;
String i2 = (String) o2;
return -i1.compareTo(i2);
}
}