我有这样的代码:
obj1 = SomeObject.method1();
if (obj1 != null) {
obj2 = obj1.method2();
if (obj2 != null) {
obj3 = obj2.method3();
if (obj3 != null) {
............
return objN.methodM();
}
}
}
....
我有将近 10 步。它看起来非常脆弱且容易出错。有没有更好的方法来检查空链方法?
谢谢。
最佳答案
您可以使用 java.util.Optional.map(..)
链接这些检查:
return Optional.ofNullable(SomeObject.method1())
.map(SomeObject2::method2)
.map(SomeObject3::method3)
// ....
.map(SomeObjectM::methodM)
.orElse(null);
关于java - 如何更好地重构可以在 java 中返回 null 的方法链?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14442299/