• Java8-Stream-No.01


    
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Optional;
    
    public class Streams1 {
    
        public static void main(String[] args) {
    
            List<String> stringCollection = new ArrayList<>();
            stringCollection.add("ddd2");
            stringCollection.add("aaa2");
            stringCollection.add("bbb1");
            stringCollection.add("aaa1");
            stringCollection.add("bbb3");
            stringCollection.add("ccc");
            stringCollection.add("bbb2");
            stringCollection.add("ddd1");
    
    
            // filtering
    
            stringCollection.stream().filter((s) -> s.startsWith("a")).forEach(System.out::println);
    
            // "aaa2", "aaa1"
    
    
            // sorting
    
            stringCollection
                    .stream()
                    .sorted()
                    .filter((s) -> s.startsWith("a"))
                    .forEach(System.out::println);
    
            // "aaa1", "aaa2"
    
    
            // mapping
    
            stringCollection
                    .stream()
                    .map(String::toUpperCase)
                    .sorted((a, b) -> b.compareTo(a))
                    .forEach(System.out::println);
    
            // "DDD2", "DDD1", "CCC", "BBB3", "BBB2", "AAA2", "AAA1"
    
    
            // matching
    
            boolean anyStartsWithA = stringCollection
                    .stream()
                    .anyMatch((s) -> s.startsWith("a"));
    
            System.out.println(anyStartsWithA);      // true
    
            boolean allStartsWithA = stringCollection
                    .stream()
                    .allMatch((s) -> s.startsWith("a"));
    
            System.out.println(allStartsWithA);      // false
    
            boolean noneStartsWithZ = stringCollection
                    .stream()
                    .noneMatch((s) -> s.startsWith("z"));
    
            System.out.println(noneStartsWithZ);      // true
    
    
            // counting
    
            long startsWithB = stringCollection
                    .stream()
                    .filter((s) -> s.startsWith("b"))
                    .count();
    
            System.out.println(startsWithB);    // 3
    
    
            // reducing
    
            Optional<String> reduced =
                    stringCollection
                            .stream()
                            .sorted()
                            .reduce((s1, s2) -> s1 + "#" + s2);
    
            reduced.ifPresent(System.out::println);
            // "aaa1#aaa2#bbb1#bbb2#bbb3#ccc#ddd1#ddd2"
    
    
        }
    
    }
    
  • 相关阅读:
    让keep-alive不缓存
    vue tab echart始终显示100px解决办法
    加载图片失败显示默认图片
    element 文件上传传参数
    vue-cli axios 拦截器设置
    制作字体图标制作
    20道Java面试必考题
    Integer源码解析
    阿里P9架构师讲解从单机至亿级流量大型网站系统架构的演进过程
    代理详解
  • 原文地址:https://www.cnblogs.com/bilaisheng/p/10210937.html
Copyright © 2020-2023  润新知