二维map排序

来源:互联网 发布:淘宝宠物用品代理 编辑:程序博客网 时间:2024/04/30 16:33

  方法:

 

public static Map.Entry[] getSortedHashtableByValue(Map<String,Map<String,Double>> map,String key) { 
   Set set = map.get(key).entrySet(); 
   Map.Entry[] entries= (Map.Entry[]) set.toArray(new Map.Entry[set.size()]);
   Arrays.sort(entries, new Comparator() {  
              public int compare(Object arg0, Object arg1) {  
                   Double key1 = Double.valueOf(((Map.Entry) arg0).getValue().toString());  
                   Double key2 = Double.valueOf(((Map.Entry) arg1).getValue().toString());  
                  return key1.compareTo(key2);  
               }  
         });
   
  return entries;    
 }

 

调用:

for(String key:tempMaps.keySet()){

//传递参数,调用排序方法
       Map.Entry[] set = getSortedHashtableByValue(tempMaps,key);

for (int i=0;i<set.length;i++){

//排序后输出
             System.out.println( Double.valueOf(set[i].getValue().toString()));
       }

}

 

原创粉丝点击