TreeMap sort by value

后端 未结 9 1119
闹比i
闹比i 2020-11-22 02:44

I want to write a comparator that will let me sort a TreeMap by value instead of the default natural ordering.

I tried something like this, but can\'t find out what

9条回答
  •  借酒劲吻你
    2020-11-22 03:49

    import java.util.*;
    
    public class Main {
    
    public static void main(String[] args) {
        TreeMap initTree = new TreeMap();
        initTree.put("D", 0);
        initTree.put("C", -3);
        initTree.put("A", 43);
        initTree.put("B", 32);
        System.out.println("Sorted by keys:");
        System.out.println(initTree);
        List list = new ArrayList(initTree.entrySet());
        Collections.sort(list, new Comparator>() {
            @Override
            public int compare(Map.Entry e1, Map.Entry e2) {
                return e1.getValue().compareTo(e2.getValue());
            }
        });
        System.out.println("Sorted by values:");
        System.out.println(list);
    }
    }
    

提交回复
热议问题