Col*_*oli 7 java java-8 project-reactor
考虑这个代码:
import reactor.core.publisher.Mono;
public class Main {
public static void main(String[] args) {
Mono.just(1)
.map(Main::return_int) // is ok
// .map(Main::return_void) // is not ok
.subscribe();
}
private static void return_void(int input) {
// do stuff with input
}
private static int return_int(int input) {
return input;
}
}
Run Code Online (Sandbox Code Playgroud)
显然禁止Mono#map与空参数一起使用,我得到error: method map in class Mono<T> cannot be applied to given types; (...)
现在我如何return_void()在链中调用这个方法?
我应该使用其他运算符#map吗?或者除了包装return_void()到一个返回的方法之外别无选择Mono< Void>?
它Mono#doOnNext不会改变流程,但允许您执行副作用(返回的东西void,如您的情况)
另外,当值不满足您的条件时,请考虑使用Mono#handle继续或调用,而不是从函数中抛出。sink.error(...)void
| 归档时间: |
|
| 查看次数: |
1967 次 |
| 最近记录: |