zoukankan      html  css  js  c++  java
  • 根据value字段对map进行排序

    一般来说,我们通常都是通过map中的key字段进行排序,步骤如下:


    一、根据key对map进行排序


    TreeMap<String , Integer> map = new TreeMap<String,Integer>(new Comparator<String>(){      //直接添加比较器

    public int compare(String o1,String o2){

            .....

            }

    });

    但是却没有直接的方法能够进行value排序;


    二、根据value对map进行排序


    步骤如下:


    1.提取视图

    2.变成ArrayList,并添加比较器

    Set<Map.Entry<String,Integer>>set = map.entrySet();

    ArrayList<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(set);

    Collections.sort(list,new Comparator<Map.Entry<String,Integer>(){

    public int compare(Map.Entry<String,Integer> o1,Map.Entry<String,Integer> o2){

         int value1 = o1.getValue();

    int value2 = o2.getValue();

      //接着就可以进行比较了

        }

    }>);

    作者:xiazdong
    出处:http://blog.xiazdong.info
    本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
  • 相关阅读:
    玩家移动
    人物上线(激活玩家之后)
    map 玩家上线
    无锁的环形队列
    随笔
    std::bind
    如何查找文件中的schema约束
    myeclipse便捷导包方式
    21 求1+2!+3!+...+20!的和
    20 求出这个数列的前 20 项之和
  • 原文地址:https://www.cnblogs.com/xiazdong/p/3058128.html
Copyright © 2011-2022 走看看