我有一段看起来很丑陋的代码,我想知道是否有更漂亮的方法来做到这一点。
这就是我通常的“漂亮”一行lambda的样子:
Boolean settingsChanged = key.pollEvents().stream()
.filter(e -> e.kind() == ENTRY_MODIFY) // Negate OVERFLOW
.anyMatch(e -> ((Path) e.context()).toAbsolutePath().equals(path));
但是然后我有这条难看的线:
if (settingsChanged)
read().setHandler(arRead -> { if (arRead.succeeded()) handler.handle(arRead.result()); });
我试着这样写:
read().setHandler(arRead -> if (arRead.succeeded()) handler.handle(arRead.result()));
但是编译器不喜欢这样。有什么方法可以修饰代码吗?
最佳答案
您是否在要求格式化代码的建议?
我知道您要求一种行布局。但这通常会降低代码的可读性。大多数公司更喜欢可读性而不是“一线奇迹”
//This doesnt look that bad?
if (settingsChanged){
read().setHandler(arRead -> {
if (arRead.succeeded()) handler.handle(arRead.result());
});
}
关于java - 一行布局lambda if语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43114359/