java8 stream ForEachOps实例
时间: 2023-09-11 19:11:14 浏览: 139
下面是一个使用 Java 8 Stream 的 ForEachOps 实例:
假设我们有一个字符串列表,我们想打印出其中所有长度大于 5 的字符串,可以使用以下代码:
```java
List<String> strings = Arrays.asList("apple", "banana", "carrot", "dragonfruit", "elderberry", "fig");
strings.stream()
.filter(s -> s.length() > 5)
.forEach(System.out::println);
```
输出结果为:
```
dragonfruit
elderberry
```
在上面的代码中,我们首先使用 `Arrays.asList()` 方法创建了一个字符串列表。然后,我们将该列表转换为一个流,并使用 `filter()` 方法过滤出字符串长度大于 5 的字符串。最后,我们调用 `forEach()` 方法打印出符合条件的字符串。
值得注意的是,在这个例子中,我们使用了 `System.out::println` 方法作为 forEach() 的参数,这是一个方法引用,它相当于下面的 lambda 表达式:
```java
s -> System.out.println(s)
```
这个 lambda 表达式接受一个字符串作为参数,并将其打印到控制台上。使用方法引用可以使代码更加简洁和易读。
阅读全文
相关推荐

















