Java List.stream().peek()
时间: 2024-06-15 20:05:18 浏览: 200
Java中的List.stream().peek()是一种用于处理集合元素的流操作方法。它可以在流的每个元素上执行一个操作,并返回一个新的流,而不会改变原始集合。
具体来说,List.stream()方法将List转换为流,使我们能够对其中的元素进行各种操作。而peek()方法则允许我们在流的每个元素上执行一个操作,例如打印元素的值或修改元素的状态,但不会改变流的内容。
peek()方法的返回值仍然是一个流,因此可以在peek()之后继续进行其他的流操作,如filter()、map()等。
下面是一个示例代码,展示了如何使用List.stream().peek()方法:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> modifiedNumbers = numbers.stream()
.peek(n -> System.out.println("Before modification: " + n))
.map(n -> n * 2)
.peek(n -> System.out.println("After modification: " + n))
.collect(Collectors.toList());
```
在上述代码中,我们首先将List转换为一个流,然后使用peek()方法在每个元素上打印出修改前的值。接着使用map()方法将每个元素乘以2,并再次使用peek()方法打印出修改后的值。最后,使用collect()方法将流转换回List。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)