作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个返回 Cat
对象的可选方法(这是一个可选的)。从我调用它的地方,我想以一种方式处理它 if cat is present then return otherwise continue
Opitional<Cat> option = isCatFound();
if (option.isPresent()) {
return option.get();
}
//DO STUFF HERE IF NO CAT FOUND
上面的代码就是我现在的。我喜欢使用比这更好的东西,单行解决方案。
有这种可能吗?或使用 Optional 的正确方法?
最佳答案
由于您的方法最后必须返回该类型的值,因此您可以使用
Optional<Cat> option = isCatFound();
return option.orElseGet(() -> {
// DO STUFF HERE IF NO CAT FOUND
// WHICH WILL EVENTUALLY RETURN A VALUE
};
如果您的“如果没有找到猫,则填充”适合一行,它可能是一个选项。否则我看不出比您的原始代码有任何优势。特别是它的缺点是替代代码路径不能再抛出已检查的异常。
关于java - 如果可选存在,如何返回,如果不存在,如何继续,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32311264/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!