有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

SpringJava反应器Mono<Tuple2>。zipWith(Mono<>)应返回Mono<Tuple3>

假设我有以下流程

Mono.just("value 1")
    .zipWith(Mono.just("value 2")) 
       //Mono<Tuple2<String, String>>
    .zipWhen(TupleUtils.function((value1, value2) -> Mono.fromCallable(() -> createValue3(value1, value2)))) 
      //Mono<Tuple2<Tuple2<String, String>, String>>

只是为了理解

private String createValue3(String value1, String value2) {
    return "value 3";
}

因此,我有

Mono<Tuple2<Tuple2<String, String>, String>>

但我需要

Mono<Tuple3<String, String, String>> 

继续前进

.map(TupleUtils.function((value1, value2, value3) -> ...)) 

这个问题有什么好的解决办法吗


共 (1) 个答案

  1. # 1 楼答案

    丑陋的解决方案

    .map(tuple -> Tuples.of(tuple.getT1().getT1(), tuple.getT1().getT2(), tuple.getT2()))