// 项目场景说明: 对于运单的常跑进行显示,前端页面显示5个常跑地址
public class MapSortUtils { /** * @冒泡排序(降序) * @param map * @return */ public static LinkedHashMap<String,Integer> mapSort( Map<String,Integer> map){ LinkedHashMap<String, Integer> linkedHashMap=new LinkedHashMap<>(); List<Map.Entry<String, Integer>> list=new ArrayList<Map.Entry<String,Integer>>(map.size()); list.addAll(map.entrySet()); int num=map.size(); for(int i=0;i<num-1;i++) { for(int j=0;j<num-i-1;j++) { Entry<String, Integer> e1=list.get(j); Entry<String, Integer> e2=list.get(j+1); if(e1.getValue()<e2.getValue()) { Collections.swap(list,j, j+1); } } } for(int n=0;n<=num-1;n++) { Entry<String, Integer> entry=list.get(n); linkedHashMap.put(entry.getKey(), entry.getValue()); } return linkedHashMap; } public static void main(String[] args) { Map<String,Integer> map=new HashMap<String, Integer>(); map.put("小明1", 1); map.put("小明2", 11); map.put("小明3", 12); map.put("小明4", 9); map.put("小明5", 8); LinkedHashMap<String,Integer> hashmap=mapSort(map); for(String key:hashmap.keySet()) { System.out.println("key:"+key+";value:"+map.get(key)); } } }