• 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());
        }
    
  • 相关阅读:
    对文件下载的补充
    IBatisNet1.5学习配置篇
    IBatisnet Facility 的几种配置
    ERP术语 英文对照(部分)(参考)
    使用IBatisNet + Castle 开发DotNet软件
    JS屏蔽浏览器右键菜单
    恢复误删数据(SQL Server 2000)--Log Explorer
    IBatisNet1.5 映射文件Parameter Maps and Inline Parameters
    深圳电话订票基本步骤及所有的取票点地址电话
    DataFormatString格式化字符串
  • 原文地址:https://www.cnblogs.com/luliang888/p/13953016.html
Copyright © 2020-2023  润新知