我遇到一个奇怪的问题。我知道我已经接近解决方案,但无法解决。
我有一个Flux<ResponseFromServer>
,它已过滤并映射到Flux<RequiredState>
。一旦有了Flux<RequiredState>
-我需要检索一个Map<RequiredState, Int>
。
到目前为止,我已经尝试过了>
public Mono<Map<RequiredState, Integer>> getDesiredMap(Flux<ResponseFromServer> response) { response.transform(this.filterAndTransform()).(.....) } protected Function<Flux<ResponseFromServer>, Flux<RequiredState>> filterAndTransform() { return f -> f.filter(responseFromServer -> this.processor.filter(responseFromServer)) .map(responseFromServer -> this.processor.convert(responseFromServer)) // converts to RequiredState }
- 我已经尝试过
collectMultiMap
(因为我还需要重复,这些重复最终必须与映射中的现有键合并,并且值基本上只是累加起来,responseFromServer.getValue()::sum
filterAndTransform()
中自己计算Map,以添加一个额外的map(..)以将其转换为Flux>,但是从Flux.collectList()
开始,如何从最终Flux中获取结果?给我一个List<Map<RequiredState, Integer>>
我如何完成下一个转换?
任何帮助将不胜感激。
谢谢!
我遇到一个奇怪的问题。我知道我已经接近解决方案,但无法解决。我有一个Flux
评论中的讨论之后,我对您的问题有答案。