Java 8 中中间操作和终止操作的区别


Stream 在 Java 8 中引入,它仅用于处理数据组,而不是用于存储元素。它不修改实际的集合,它们仅根据流水线方法提供结果。

Stream API 支持多种操作,操作分为两部分:

  • 中间操作 - 这些操作用于将其他方法串联起来并转换为其他流。它们不会产生结果,因为这些操作在终止操作执行之前不会被调用。以下是示例:
  • sorted(Comparator<T>)
  • peek(Consumer<T>)
  • distinct()
  • 终止操作 - 这些操作用于生成结果。它们不能用于链接其他方法。以下是示例:
  • forEach
  • count
  • toArray
序号关键字中间操作终止操作
1
基础
这些操作用于将其他方法串联起来并转换为其他流
Java 中的终止操作是在流上作为最后一步应用的方法。
2
返回类型
它们只返回另一个流。
它们返回最终结果。
3
方法
sorted(Comparator<T>)
peek(Consumer<T>)
distinct()
forEach
count
toArray


4.
用例
这些操作应用于将流转换为另一个流
它们可用于生成结果。

中间操作和终止操作示例

public class Main {
   public static void main(String args[]) throws InterruptedException, ExecutionException {
      List<String> laptopList = new ArrayList();
      laptopList.add("DELL");
      laptopList.add("ACER");
      laptopList.add("HCL");

      // Intermediate operation
      laptopList.sort((p1, p2) -> p1.compareTo(p2));

      // Terminal Operation
      laptopList.forEach(a -> {
         System.out.println(a);
      });
   }
}

更新于:2020-09-09

14K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告