jdk8新特性-steam常用流

 ArrayList objects = new ArrayList<>();
        Stu lang = new Stu("lang", 66, "1");
        Stu yuan = new Stu("yuan", 1206, "1");
        Stu geng = new Stu("geng", 1201, "1");
        objects.add(lang);
        objects.add(yuan);
        objects.add(geng);
        // 过滤集合
      List collect = objects.stream().filter(stu -> ObjectUtil.isNull(stu.getAge())).collect(Collectors.toList());
        // 排序
        List collect = objects.stream().sorted(Comparator.comparingInt(Stu::getAge)).collect(Collectors.toList());
        // 自定义map集合
        ConcurrentMap collect = objects.stream().collect(Collectors.toConcurrentMap(Stu::getName,Stu::getSex));


        for (Map.Entry integerStringEntry : collect.entrySet()) {
            System.out.println(integerStringEntry.getKey());
            System.out.println(integerStringEntry.getValue());
        }
        // 分组map
        Map> collect = objects.stream().collect(Collectors.groupingBy(Stu::getAge));


//        for (Map.Entry> integerListEntry : collect.entrySet()) {
//            System.out.println(integerListEntry.getKey());
//            for (Stu stu : integerListEntry.getValue()) {
//                System.out.println(stu);
//            }
//        }
//        for (Stu stu : collect) {
//            System.out.println(stu);
//        }


        // sum计算总和
        Double collect1 = objects.stream().collect(Collectors.summingDouble(Stu::getAge));
        System.out.println(collect1);
    }

// BigDecimal 类型计算总和

BigDecimal dayData = list.stream().map(TGBlindboxOrder::getTotalAmount).reduce(BigDecimal.ZERO, BigDecimal::add);

你可能感兴趣的:(java,java,jvm,servlet)