• 实现对HashMap的value排序


    问题:
    如何对HashMap中的value值进行排序

    关键点:
    1.取HashMap的Map.Entry,放入List
    2.利用Collections.sort(List, Comparator<? extents T>)对Map.Entry中的value进行排序
    3.实现内部类Comparator,实现String的compare方法

    代码:

     1 import java.util.*;
     2 
     3 public class HashMapTest {
     4 
     5     public static void main(String[] args){
     6         HashMap<String, String> map = new HashMap<>();
     7         map.put("one", "good");
     8         map.put("two", "bad");
     9         map.put("three", "happy");
    10         map.put("fourth", "sad");
    11 
    12         List<Map.Entry<String, String>> listEntry = new ArrayList<>();
    13         listEntry.addAll(map.entrySet());
    14         Collections.sort(listEntry, new Comparator<Map.Entry<String, String>>() {
    15             @Override
    16             public int compare(Map.Entry<String, String> o1, Map.Entry<String, String> o2) {
    17 
    18                 // String的compareTo方法,返回负数,说明o1在o2的字典顺序之前。
    19                 return o1.getValue().compareTo(o2.getValue());
    20             }
    21         });
    22 
    23         for(Map.Entry<String, String> entry : listEntry){
    24             System.out.println(entry.getKey() + "  " + entry.getValue());
    25         }
    26     }
    27 }

    运行结果:

    结果按照英文字母表的顺序排序。

  • 相关阅读:
    vue-learning:8-template-v-on-and-modifier
    vue-learning:7-template-v-bind-with-class-and-style
    vue-learning:6-template-v-bind
    vue-learning:5-template-v-for
    Bootstrap 导航栏
    Bootstrap 导航元素
    Bootstrap 输入框组
    Bootstrap 按钮下拉菜单
    Bootstrap 按钮组
    Bootstrap 下拉菜单(Dropdowns)
  • 原文地址:https://www.cnblogs.com/teiba/p/10620506.html
Copyright © 2020-2023  润新知