zoukankan      html  css  js  c++  java
  • Stream操作

        public static void main(String[] args) {
            List<Parking> parkings = Arrays.asList(Parking.builder().build().setParkingName("白天车场").setNumber(111),
                    Parking.builder().build().setParkingName("夜晚车场").setNumber(222),
                    Parking.builder().build().setParkingName("夜晚车场").setNumber(222));
    
            //1、forEach:forEach循环,获取每一个元素
            parkings.stream().forEach(parking -> System.out.println("***" + parking.getParkingName()));
    
            //2、map:映射,映射每个元素到对应的结果,生成新的集合
            parkings.stream().map(Parking::getParkingName).collect(Collectors.toList()).forEach(System.out::println);
    
            //3、filter:条件过滤,过滤掉条件中的集合
            parkings.stream().filter(parking -> parking.getNumber() == 222).collect(Collectors.toList());
    
            //4、count:获取集合数量
            System.out.println(parkings.stream().filter(parking -> parking.getNumber() == 222).count());
    
            //5、distinct:去重
            parkings.stream().map(Parking::getNumber).distinct().collect(Collectors.toList()).forEach(System.out::println);
    
            //6、limit:获取指定数量流
            new Random().ints().limit(10).forEach(System.out::println);
    
            //7、sorted:用于对流进行排序
            new Random().ints().limit(10).sorted().forEach(System.out::println);
    
            //8、parallelStream:并行流    stream:串行流
            System.out.println(parkings.parallelStream().count());
    
            /**
             *  9、collect:对Stream进行处理,返回新的对象
             *  Collectors.toList():返回List集合
             *  Collectors.joining():字符串拼接
             */
            System.out.println(parkings.stream().map(Parking::getParkingName).collect(Collectors.joining(",")));
    
            /**
             * 10:summaryStatistics:统计操作
             * getMax:最大值
             * getMin:最小值
             * getSum:所有数之和
             * getAverage:平均数
             */
            List<Integer> numbers = Arrays.asList(3, 2, 2, 3, 7, 3, 5);
            IntSummaryStatistics stats = numbers.stream().mapToInt((x) -> x).summaryStatistics();
    
            System.out.println("列表中最大的数 : " + stats.getMax());
            System.out.println("列表中最小的数 : " + stats.getMin());
            System.out.println("所有数之和 : " + stats.getSum());
            System.out.println("平均数 : " + stats.getAverage());
        }
    
  • 相关阅读:
    GC 案例收集整理
    Netty ByteBuf泄露定位修改。
    使用Modernizr 检测HTML5和CSS3浏览器支持功能 (转自http://www.adobe.com/cn/devnet/dreamweaver/articles/using-modernizr.html)
    drupal网站邮件发送功能的实现
    Customizing and Overriding User Login page, Register, and Password Reset in Drupal 6 and 7
    WordPress网站迁移
    HTTP协议详解 (转)
    HTTP协议
    Apache服务器放置多个站点的配置方法 (转)
    Apache禁止或允许固定IP访问特定目录、文件、URL
  • 原文地址:https://www.cnblogs.com/luliang888/p/13953016.html
Copyright © 2011-2022 走看看