java map 根据 map的value值进行排序

Posted 曾鸿发

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java map 根据 map的value值进行排序相关的知识,希望对你有一定的参考价值。

技术图片
 1     //根据销量排行查询
 2     public void queryGoodsByHotCount(){
 3         //将map集合键和值封装到entry对象中  然后转换成set集合
 4         Set<Entry<Integer,Goods>>setGoods=mapGoods.entrySet();
 5         //将set集合转成list集合
 6         List<Entry<Integer,Goods>> listGoods=new ArrayList<>();
 7         listGoods.addAll(setGoods);
 8         
 9         //类比较器   根据销量进行排序
10         Collections.sort(listGoods,new Comparator<Entry<Integer,Goods>>() {
11             @Override
12             public int compare(Entry<Integer, Goods> entry1, Entry<Integer, Goods> entry2){
13                 //顺序排列。。。
14                 return entry1.getValue().getgHotCount()-entry2.getValue().getgHotCount();
15             }
16         });
17         //进行打印
18         System.out.println("编号	商品名称	商品数量	商品销量	商品的价格");
19         for(Entry<Integer,Goods> entry:listGoods){
20             System.out.println(entry.getValue());
21         }
22     }
View Code

 

以上是关于java map 根据 map的value值进行排序的主要内容,如果未能解决你的问题,请参考以下文章

如何对map中的value进行排序

java中的map怎么根据key值修改value值?

Java中如何对Map的value或者key排序

JAVA8中对List<map<String,Object>>根据map某个value值进行排序,还支持中文排序,可以替代order by

Java,map中怎么根据键更新值

java用map通过value能找到key吗