(key,value)对value进行排序 - Go语言中文社区

(key,value)对value进行排序


降序排序

package test;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;


public class mapSort {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Map<String,String> map = new HashMap<String,String>();
//        map.put("c","cccc");
//        map.put("a","aaaa");
//        map.put("b","bbbb");
//        map.put("d","dddd");
        map.put("c","0.6");
        map.put("a","0.78");
        map.put("b","0.5");
        map.put("d","0.78");
        List<Map.Entry<String,String>> list=new ArrayList<Map.Entry<String,String>>(map.entrySet());
        Collections.sort(list,new Comparator<Map.Entry<String,String>>(){
            public int compare(Entry<String,String> o1,Entry<String,String> o2){
                return o2.getValue().compareTo(o1.getValue());
            }
        }
        );
//        for(Map.Entry<String, String> mapping:list){
//          System.out.println(mapping.getKey()+":"+mapping.getValue());
//        }
       // for(int i = 0;i<1;i++)
        for(int i = 0;i<list.size();i++)
        {
            System.out.println("key:" + list.get(i).getKey() + "---Value:" + list.get(i).getValue() );
              }
    }


}

运行结果
这里写图片描述
升序排序,只需改一行

public int compare(Entry<String,String> o1,Entry<String,String> o2){
                return o1.getValue().compareTo(o2.getValue());
            }

运行结果
这里写图片描述

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/sundujing/article/details/49081881
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-09-04 17:07:05
  • 阅读 ( 1010 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

推荐文章

猜你喜欢