jdk1.8 stream流介绍以及使用

流简介

流是jdk1.8引入的新特性,集合支持一个stream方法,它会返回一个流(接口定义在java.util.stream.Stream里),它允许你以声明性的方式处理数据集合,即你只需要对这些数据做什么(筛选,映射,查找、匹配等等),具体实现过程Stream库已经实现了。关于流的概念我们需要知道以下几点:

流是"从支持数据处理操作的源生成的一系列元素";

流利用内部迭代;

流操作有两种:中间操作和终止操作,filter和map等中间操会返回一个流并连接在一起,但并不会生成任何结果,forEach和count等终止操作会返回一个非流的值;

流中的元素是按需加载的,延时加载;

使用流

Stream api支持许多操作,这些操作能帮助我们快速完成复杂的数据查询,如筛选,切片,映射,查找,匹配和规约。

filter方法:该方法接受一个Predicate函数式接口作为过滤条件,并返回一个包括所有符合条件元素的流。

List vegetarianMenu = menu.stream() .filter(Dish::isVegetarian) .collect(toList());

 

おすすめ

転載: blog.csdn.net/u011821510/article/details/103797169