首页  >  文章  >  Java  >  Java 8中中间操作和终端操作的区别

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

王林
王林转载
2023-08-19 20:37:15684浏览

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

Stream在Java 8中引入,它仅用于处理一组数据,而不是用于对元素进行排序。它不修改实际的集合,它们只根据管道方法提供结果。

Stream API支持多个操作,这些操作分为两部分:

  • Intermediate Operation- 这些操作用于管道其他方法并转换为其他流。它们不产生结果,因为这些操作直到执行终端操作时才被调用。以下是示例:
  • sorted(Comparator8742468051c85b06f0a0af9e3e506b5c)
  • peek(Consumer8742468051c85b06f0a0af9e3e506b5c)
  • distinct()
  • Terminal operations - 这些操作用于生成结果。它们不能用于链接其他方法。以下是示例:
  • forEach
  • count
  • toArray
序号 关键字 Intermediate Operations Terminal Operations
1

基本操作

这些操作用于管道其他方法并转换为其他流

Java中的终端操作是应用于流的最后一步方法。

2

返回类型

它们只返回另一个流。

它们返回最终结果。

3

方法

sorted(Comparator8742468051c85b06f0a0af9e3e506b5c)

peek(Consumer8742468051c85b06f0a0af9e3e506b5c)

distinct()

forEach

count

toArray

4.

用例

这些操作应该用于将流转换为另一个流

它们可以用于生成结果。

Intermediate和Terminal操作的示例

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);
      });
   }
}

以上是Java 8中中间操作和终端操作的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除