zoukankan      html  css  js  c++  java
  • 集合框架系列教材 (十八)- 其他

    步骤1:聚合操作 

    步骤 1 : 聚合操作 

    JDK8之后,引入了对集合的聚合操作,可以非常容易的遍历,筛选,比较集合中的元素。

    像这样:

    String name =heros

        .stream()

        .sorted((h1,h2)->h1.hp>h2.hp?-1:1)

        .skip(2)

        .map(h->h.getName())

        .findFirst()

        .get();



    但是要用好聚合,必须先掌握Lambda表达式,聚合的章节讲放在Lambda与聚合操作部分详细讲解

    聚合操作

    package lambda;

      

    import java.util.ArrayList;

    import java.util.Collections;

    import java.util.Comparator;

    import java.util.List;

    import java.util.Random;

    import charactor.Hero;

      

    public class TestAggregate {

      

        public static void main(String[] args) {

            Random r = new Random();

            List<Hero> heros = new ArrayList<Hero>();

            for (int i = 0; i < 10; i++) {

                heros.add(new Hero("hero " + i, r.nextInt(1000), r.nextInt(100)));

            }

            System.out.println("初始化集合后的数据 (最后一个数据重复):");

            System.out.println(heros);

             

            //传统方式

            Collections.sort(heros,new Comparator<Hero>() {

                @Override

                public int compare(Hero o1, Hero o2) {

                    return (int) (o2.hp-o1.hp);

                }

            });

             

            Hero hero = heros.get(2);

            System.out.println("通过传统方式找出来的hp第三高的英雄名称是:" + hero.name);

             

            //聚合方式

            String name =heros

                .stream()

                .sorted((h1,h2)->h1.hp>h2.hp?-1:1)

                .skip(2)

                .map(h->h.getName())

                .findFirst()

                .get();

            System.out.println("通过聚合操作找出来的hp第三高的英雄名称是:" + name);

             

        }

    }


    更多内容,点击了解: https://how2j.cn/k/collection/collection-aggregate/702.html

  • 相关阅读:
    031.NET5_ActionFilter的自定义和执行特点
    030.NET5_Autofac单抽象多实现属性注入
    029.NET5_Autofac单抽象多实现构造函数注入
    028.NET5_Autofac通过类支持AOP
    vue 设置回车input提交
    vscode设置全局自动换行
    vscode 插件大全
    SQL Server 2019基础配置
    SQL Server 2019 安装教程
    phpstudy(php环境)设置内网访问
  • 原文地址:https://www.cnblogs.com/Lanht/p/12615486.html
Copyright © 2011-2022 走看看