Spring boot 种reactor 里面publisher的map和flatMap操作符最终的区别是什么?执行流程是怎样的?

tiandalin 发布于 2019/10/29 15:35
阅读 212
收藏 0

【华为云1024程序员节·向云而生】预约直播 抽14件华为电子产品礼包!>>>

 // map操作符
 Flux flux = Flux.just(1,2,3,4)
            .log()
            .map(i->{
                System.out.println("first:"+i);
                return i+1;
            });

        System.out.println(flux.subscribe(
            System.out::println
        ));
                
//flapMap操作符
Flux flux1 = Flux.just(1,2,3,4)
            .log()
            .flatMap(i->{
                Flux flux2 = Flux.just(i);
                System.out.println("first:"+i);
                return flux2;
            });
        flux.subscribe(
                System.out::println
        );
                测试输出完全一样。除了参数不一样外,本质的区别是什么?

加载中
0
妹子楼顶有鸽子
妹子楼顶有鸽子

map 1:1
flatMap 1:N

t
tiandalin
大佬能留个联系方式吗
0
osc_19041052
osc_19041052

你是在搞笑的吗? 这可能一样吗, map是把item M -> N, flatMap是吧item M -> Flux<N> 真能一样吗?  看map 和flatMap 不就知道了

返回顶部
顶部