Map map=new HashMap<String,Double>(); map.put("1",3.4); map.put("4",4.4); map.put("3",1.4); map.put("2",2.4); //按key进行排序 Set set=map.keySet(); Object[] arr=set.toArray(); Arrays.sort(arr); for(Object key:arr){ System.out.println(key+":"+map.get(key)); } //按value进行排序 List<Map.Entry<String, Double>> list = new ArrayList<Map.Entry<String, Double>>(map.entrySet()); //转换为list //第一种方式按list.sort排序 list.sort(new Comparator<Map.Entry<String, Double>>() { @Override public int compare(Map.Entry<String, Double> o1, Map.Entry<String, Double> o2) { return o2.getValue().compareTo(o1.getValue()); } }); for(int i=0;i<list.size();i++){ System.out.println("list.sort="+list.get(i).getKey()+"->"+list.get(i).getValue()); } //第二种方式collection.sort Collections.sort(list, new Comparator<Map.Entry<String, Double>>() { @Override public int compare(Map.Entry<String, Double> o1, Map.Entry<String, Double> o2) { return o2.getValue().compareTo(o1.getValue()); } }); for(int i=0;i<list.size();i++){ System.out.println("Collections.sort="+list.get(i).getKey()+"->"+list.get(i).getValue()); }
利用java分别实现key,value排序返回结果
最新推荐文章于 2022-12-01 21:27:14 发布