如何給一個map按照key對應的value值排序


直接上代碼:

public static void main(String[] args) {
        HashMap<String, Integer> map = new HashMap<String, Integer>();
        for(int i=0;i<10;i++) {
       //添加key,並隨機添加key對應value的integer值 map.put(
"aa" + i, (int)(Math.random()*1000)); } List<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(map.entrySet());
     //升序排列邏輯 Collections.sort(list,
new Comparator<Map.Entry<String,Integer>>() { public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) { return o1.getValue().compareTo(o2.getValue()); } });
     //打印輸出結果
for(Map.Entry<String,Integer> mapping:list){ System.out.println(mapping.getKey() + "---:---" + mapping.getValue()); } }

輸出結果如下:

aa7---:---7
aa5---:---27
aa1---:---77
aa9---:---140
aa0---:---194
aa4---:---445
aa3---:---531
aa2---:---566
aa8---:---631
aa6---:---992

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM