专栏名称: 码农小胖哥
技术公众号:码农小胖哥
目录
相关文章推荐
湖北经视  ·  辽宁一造纸厂突发大火 ·  2 天前  
云上随州  ·  湖北省委组织部最新公告 ·  2 天前  
湖北经视  ·  刚刚,武汉轮渡发布临时停航通知 ·  3 天前  
开发者全社区  ·  原来如此:很多公司都不招大龄程序员了。。。 ·  3 天前  
51好读  ›  专栏  ›  码农小胖哥

Java 8 Stream Api 中的 peek 操作

码农小胖哥  · 掘金  ·  · 2019-11-27 01:33

正文

阅读 485

Java 8 Stream Api 中的 peek 操作

1. 前言

我在 Java 8 Stream API中的 map 和flatMap 中讲述了 Java8 Stream API map 操作和 flatMap 操作的区别。然后有小伙伴告诉我 peek 操作 也能实现元素的处理。但是你知道 map peek 的区别吗? map 我们在开头文章已经讲过了,你可以去详细了解一下它,本文将重点讲解一下 peek 操作。

2. peek

peek 操作接收的是一个 Consumer<T> 函数。顾名思义 peek 操作会按照 Consumer<T> 函数提供的逻辑去消费流中的每一个元素,同时有可能改变元素内部的一些属性。 这里我们要提一下这个 Consumer<T> 以理解 什么是消费。

2.1 什么是消费 (Consumer)

package java.util.function;

import java.util.Objects;

 
@FunctionalInterface
public interface Consumer<T> {
 
    void accept(T t);

     // 嵌套accept , 顺序为先执行 accept 后执行参数里的 after.accpet
    default






请到「今天看啥」查看全文