Java8 Stream按Map的键或者值进行排序

一、按Map的键排序

public static void sortedMapKey(){
        // 创建一个Map,并填入数据
        Map<String, Integer> codes = new HashMap<>();
        codes.put("zhangsan", 1);
        codes.put("lisi", 49);
        codes.put("wangwu", 33);
        codes.put("anni", 86);
        codes.put("block", 92);
        // 按照Map的键进行排序
        Map<String, Integer> sortedMap = codes.entrySet().stream()
                .sorted(Map.Entry.comparingByKey())
                .collect(
                        Collectors.toMap(
                                Map.Entry::getKey,
                                Map.Entry::getValue,
                                (oldVal, newVal) -> oldVal,
                                LinkedHashMap::new
                        )
                );
        // 将排序后的Map打印
        sortedMap.entrySet().forEach(System.out::println);
    }

二、按Map的值排序

public static void sortedMapValue(){
        // 创建一个Map,并填入数据
        Map<String, Integer> codes = new HashMap<>();
        codes.put("zhangsan", 1);
        codes.put("lisi", 49);
        codes.put("wangwu", 33);
        codes.put("anni", 86);
        codes.put("block", 92);
        Map<String, Integer> sortedMap2 = codes.entrySet().stream()
                .sorted(Map.Entry.comparingByValue())
                .collect(Collectors.toMap(
                        Map.Entry::getKey,
                        Map.Entry::getValue,
                        (oldVal, newVal) -> oldVal,
                        LinkedHashMap::new));

        sortedMap2.entrySet().forEach(System.out::println);
    }

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...