案例:

    public static void main(String[] args) {
        List<String> items = Arrays.asList("apple", "apple", "banana","apple", "orange",
                "banana", "papaya", "Hello","word","Hello","beijing","shanghai","china");

        /**
         * 使用 groupingBy和counting
         */
        Map<String, Long> wordCount = items
                .stream()
                .collect(Collectors.groupingBy(i -> i,Collectors.counting())
                );

        //无序结果
        System.out.println(wordCount);

        // 创建stream再次排序
        Map<String, Long> finalMap = new LinkedHashMap<>();
        wordCount.entrySet().stream()
                .sorted(Map.Entry.<String, Long>comparingByValue()
                        .reversed())
                .forEachOrdered(e -> finalMap.put(e.getKey(), e.getValue()));

        // 有序结果
        System.out.println(finalMap);
    }

最新文章

  1. 温故而知新 css + html 超级牛逼的居中策略
  2. 【动态规划】【二分】【最长上升子序列】Vijos P1028 魔族密码
  3. photoshop mac版下载及破解
  4. Android中各种onTouch事件
  5. Udemy - Angular 2 - The Complete Guide 笔记
  6. LISTCTRL控件方法
  7. server.xml 解析
  8. 前端知识复习: JS选中变色
  9. 基于三层架构的增删改查Get知识点
  10. Map.putAll方法
  11. java中,字符串类型的时间数据怎样转换成date类型。
  12. 修改docker0默认IP地址
  13. for each循环(增强for循环)
  14. Type I and type II errors | 第一类错误和第二类错误
  15. MySQL 必知必会学习笔记
  16. C++之强制类型转化
  17. jqgrid 基础应用
  18. C++ Error : initial value of reference to non-const must be an lvalue
  19. Jmeter 爬Boss中注册和登录
  20. poj_3461 kmp

热门文章

  1. 数据流:DataOutputStream与DataInputStream的使用
  2. php rand()函数 语法
  3. 重温HTML和CSS3
  4. ArcMap如何撤销配准
  5. Unzip 解压报错
  6. python使用消息队列RabbitMq(入门)
  7. python zip 压缩
  8. 关于ExtJS对javascript中的Object的扩展
  9. css控制文本对齐
  10. StarUml3.10 Mac 注册key 破解