1 集合的流式编程的简介
Stream是JDK1.8之后出现的新特性,也是JDK1.8新特性中最值得学习的两种新特性之一。(另外一
个是lambda表达式)。
Stream是对集合操作的增强,流不是集合的元素,不是一种数据结构,不负责数据的存储的。流更
像是一个迭代器,可以单向的遍历一个集合中的每一个元素,并且不可循环。
2 为什么要使用集合的流式编程
有些时候,对集合中的元素进行操作的时候,需要使用到其他操作的结果。在这个过程中,集合的流
式编程可以大幅度的简化代码的数量。将数据源中的数据,读取到一个流中,可以对这个流中的数据进
行操作(删除、过滤、映射…)。每次的操作结果也是一个流对象,可以对这个流再进行其他的操作。
3 使用流式编程的步骤
通常情况下,对集合中的数据使用流式编程,需要经过以下三步。
- 获取数据源,将数据源中的数据读取到流中。
- 对流中的数据进行各种各样的处理。
- 对流中的数据进行整合处理。
在上述三个过程中,过程2中,有若干方法,可以对流中的数据进行各种各样的操作,并且返回流对
象本身,这样的操作,被称为 – 中间操作。过程3中,有若干方法,可以对流中的数据进行各种处理,
并关闭流,这样的操作,被称为 – 最终操作。
在中间操作和最终操作中,基本上所有的方法参数都是函数式接口,可以使用lambda表达式来实
现。使用集合的流式编程,来简化代码量,是需要对 lambda 表达式做到熟练掌握。