java8新特性-Stream概述

Posted 豆莱浆渠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java8新特性-Stream概述相关的知识,希望对你有一定的参考价值。

public class App {
    public static void main(String[] args) {
        //1.添加测试数据
        List<String> accounts = new ArrayList<>();
        accounts.add("tom");
        accounts.add("jerry");
        accounts.add("beita");
        //1.1 业务要求:长度大于等于5的有效账号
        for (String account : accounts) {
            if (account.length() >= 5) {
                System.out.println("有效账号:" + account);
            }
        }
        //1.2 通过迭代方式进行操作
        Iterator<String> iterator = accounts.iterator();
        while (iterator.hasNext()) {
            String account = iterator.next();
            if (account.length() >= 5) {
                System.out.println("有效账号:" + account);
            }
        }
        //1.3 stream结合lambda表达式进行处理
        List<String> vaildAccounts = accounts.stream().filter(s -> s.length() >= 5).collect(Collectors.toList());
        System.out.println(vaildAccounts);
    }
}

Stream使用一种类似于sql语句从数据库查询数据的直观方式类提供对java集合表达和运算的高阶抽象。

这种处理方式是将要处理的元素看成一种流,并且可以在管道的节点上进行处理,比如筛选,排序,聚合等。

处理的对象可以是集合,数组,i/o channel,产生器generator等。

聚合操作可以是map,filter,reduce,find,match,sorted等。

以上是关于java8新特性-Stream概述的主要内容,如果未能解决你的问题,请参考以下文章

java8的 概述以及新特性

java8 新特性3 Stream Api

Java8新特性面试官问我:Java8中创建Stream流有哪几种方式?

Java8新特性面试官问我:Java8中创建Stream流有哪几种方式?

java代码之美---Java8 Stream

Java8 新特性之集合操作Stream