首页 >Java >java教程 >如何在Java 9的JShell中使用中间流操作?

如何在Java 9的JShell中使用中间流操作?

WBOY
WBOY转载
2023-08-19 08:18:09856浏览

如何在Java 9的JShell中使用中间流操作?

JShell Java 9中引入的一种工具,它接受简单的语句作为输入,如表达式、变量、方法、类等,并产生即时结果。

一个流(Stream)是一系列值的序列。一个中间流操作(Intermediate Stream Operation)是一个对流进行操作的操作。例如,它可以应用于一个lambda表达式,并产生另一个流作为结果。

下面是最常用的中间流操作:

  • 1) sorted():该方法保留了消耗的流的元素作为结果,但也按照自然排序顺序对它们进行排序。
  • 2) distinct():该方法返回一个流,只保留输入流中的唯一元素,并且可以保持保留元素的相对顺序。
  • 3) filter():该方法可以根据一些逻辑来过滤流元素。
  • 4) map():该方法应用lambda表达式来计算输入流元素的新结果。然后,它将这些结果作为输出返回一个流。

在下面的代码片段中,我们可以在JShell工具中实现不同的中间流操作。

代码片段

<strong>jshell> List<Integer> numbers = List.of(3, 10, 23, 200, 77, 9, 32);
numbers ==> [3, 10, 23, 200, 77, 9, 32]

jshell> numbers.stream().sorted().forEach(elem -> System.out.println(elem));
3
9
10
23
32
77
200
</strong>
<strong>jshell> List<Integer> numbers = List.of(3, 5, 54, 280, 5, 9, 40);
numbers ==> [3, 5, 54, 280, 5, 9, 40]

jshell> numbers.stream().distinct().forEach(elem -> System.out.println(elem));
3
5
54
280
9
40

</strong><strong>jshell> numbers.stream().distinct().sorted().forEach(elem -> System.out.println(elem));
3
5
9
40
54
280
</strong>
<strong>jshell> numbers.stream().distinct().map(num -> num * num).forEach(elem -> System.out.println(elem));
9
25
2916
78400
81
1600</strong>

以上是如何在Java 9的JShell中使用中间流操作?的详细内容。更多信息请关注PHP中文网其他相关文章!

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