zoukankan      html  css  js  c++  java
  • map按值排序

    package com.zhilei.test;

    import java.util.Comparator;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.TreeMap;

    public class mapValueCompareSort {
    public static void main(String[] args) {

    HashMap<String, Double> mapDesc = new HashMap<String, Double>();
    ValueComparator bvcDESC = new ValueComparator(mapDesc);
    TreeMap<String, Double> sorted_map_Desc = new TreeMap<String, Double>(bvcDESC);

    mapDesc.put("A", 99.5);
    mapDesc.put("B", 67.4);
    mapDesc.put("C", 67.4);
    mapDesc.put("D", 67.3);
    mapDesc.put("E", 11.0);
    mapDesc.put("F", -0.1);
    mapDesc.put("G", 0.1);
    mapDesc.put("H", -99.1);


    sorted_map_Desc.putAll(mapDesc);

    System.out.println("降序=====results: " + sorted_map_Desc);

    HashMap<String, Double> mapAsc = new HashMap<String, Double>();
    ValueComparatorAsc bvcAsc = new ValueComparatorAsc(mapAsc);
    TreeMap<String, Double> sorted_mapAsc = new TreeMap<String, Double>(bvcAsc);

    mapAsc.put("宽", 99.5);
    mapAsc.put("B", 67.4);
    mapAsc.put("C", 67.4);
    mapAsc.put("D", 67.3);
    mapAsc.put("r", 11.0);
    mapAsc.put("rt", -0.1);
    mapAsc.put("ee", 0.1);
    mapAsc.put("cc", -99.1);

    System.out.println("升序====unsorted map: " + mapAsc);

    sorted_mapAsc.putAll(mapAsc);

    System.out.println("升序====results: " + sorted_mapAsc);

    }
    }

    class ValueComparator implements Comparator<String> {
    Map<String, Double> base;

    public ValueComparator(Map<String, Double> base) {
    this.base = base;
    }

    public int compare(String a, String b) {
    if (base.get(a) >= base.get(b)) {
    return -1;
    } else {
    return 1;
    }
    }
    }

    class ValueComparatorAsc implements Comparator<String> {
    Map<String, Double> base;

    public ValueComparatorAsc(Map<String, Double> base) {
    this.base = base;
    }

    public int compare(String a, String b) {
    if (base.get(a) <= base.get(b)) {
    return -1;
    } else {
    return 1;
    }
    }

    }
  • 相关阅读:
    The file 'MemoryStream' is corrupted! 的解决办法
    U3D包大小优化之microlib
    U3D中IOS平台泛型方法尽少使用
    {转}Unity3d+Jenkins 自动编译iOS、Android版本(U3D远程自动打包工具)
    Unity Remote 4安卓机使用指南
    2dtoolkit获取sprite像素大小的方法
    国行手机安装GOOGLE PLAY
    手机网络上YOUTUBE用fqrouter2~~
    U3D4.X版本无法安装MONODEV编辑器
    UNITY3D在IOS开发下的反射机制限制
  • 原文地址:https://www.cnblogs.com/leigepython/p/10118946.html
Copyright © 2011-2022 走看看