当前位置:嗨网首页>书籍在线阅读

11-收集流中的元素

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

6.4 收集流中的元素

Java流便于开发者按顺序或并行地处理一系列元素。可以从不同的数据源创建流(比如 CollectionFileArray) ,然后应用一系列通常由lambda表达式定义的操作到流的元素上。这些操作可以划分为两种不同的种类。

  • 中间操作: 这些操作返回一个新的 Stream 作为结果,能过滤、转换或排序流的元素。
  • 结尾操作: 这些操作在处理完流的元素之后返回一个结果。

一个流有一个源、零个或多个中间操作,以及一个结尾操作。而最重要的两个结尾操作如下。

  • 归约操作:它能让你在处理完流的所有元素之后获得唯一的结果。这个结果通常是所有元素的总计。6.3节已经阐述了如何在Java里使用归约操作。
  • 收集操作:它能让你用元素的处理结果生成一种数据结构。由于这种数据结构是可变的,所以收集操作也称为可变归约操作。

本节将介绍如何在Java流中用不同版本的 collect() 方法和辅助的 Collectors 类来执行收集操作。