gpt4 book ai didi

java - 如何更好地重构可以在 java 中返回 null 的方法链?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:33:38 25 4
gpt4 key购买 nike

我有这样的代码:

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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com