【发布时间】:2021-08-18 22:38:40
【问题描述】:
鉴于以下MyObject 和Flux<MyObject>,从该助焊剂中删除具有相同属性的MyObjects 的最佳方法是什么?
import lombok.Data;
import reactor.core.publisher.Flux;
public class Example {
@Data
public class MyObject {
final String name;
final int priority;
}
public Example() {
Flux<MyObject> myFlux = Flux.just(
new MyObject("abc", 2),
new MyObject("abc", 4),
new MyObject("cde", 1));
}
}
例如,我想删除具有相同name 的对象,同时选择具有更高priority 的对象。
输出:[Example.MyObject(name=abc, priority=4), Example.MyObject(name=cde, priority=1)]
如果我使用myFlux.distinct(MyObject::getName),我将无法选择保留哪一个。
【问题讨论】:
标签: java reactive-programming spring-webflux project-reactor