How to sort HashMap by key in descending order Java

1 Answer

0 votes
import java.util.stream.Collectors;
import java.util.LinkedHashMap;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;
   
public class MyClass {
    public static void main(String args[]) {
        HashMap<String, Integer> hmp = new HashMap<String, Integer>();
    
        hmp.put("java", 4);
        hmp.put("c++", 2);
        hmp.put("c", 7);
        hmp.put("python", 5);
        hmp.put("rust", 6);
        hmp.put("c#", 1);
        hmp.put("php", 3);
            
        LinkedHashMap<String, Integer> reverseSortedMap = hmp.entrySet()
                        .stream()
                        .sorted(Map.Entry.comparingByKey(Comparator.reverseOrder()))
                        .collect(Collectors.toMap(
                        Map.Entry::getKey,
                        Map.Entry::getValue,
                        (oldKey, newKey) -> oldKey, LinkedHashMap::new));
 
        System.out.println(reverseSortedMap);
  
    }
}
        
        
        
        
/*
run:
        
{rust=6, python=5, php=3, java=4, c++=2, c#=1, c=7}
        
*/

 



answered Apr 29, 2023 by avibootz

Related questions

1 answer 89 views
2 answers 117 views
1 answer 93 views
1 answer 118 views
1 answer 135 views
1 answer 155 views
...