Java中是否有三元赋值运算符?

我对 Java 还很陌生,我试图检查一个变量是否为空,如果不是,则使用它的值。以前的开发人员写的东西是这样的:

xModel.setName(xService.getName(xID) != null ? xService.getName(xID) : "");

我想重构它,这样我就不必两次使用 xService 来获得名称。

我知道我可以预先存储该值,但这只是一个示例。我只是想知道是否有办法在 Java 中做到这一点?

谢谢。

回答

我不同意所有其他答案。它们需要通过从标准库中导入结构来获得特定版本的特殊功能,或者在这种特定情况下工作的模糊调用,总而言之,只是隐藏了您尝试做的事情的简单性。

保持简单(KISS)。不要在不需要时引入更多的复杂性和概念。您正在重构另一个开发人员的代码,这意味着这是一个其他人稍后可能会阅读您的代码的项目。所以保持简单。

String name = xService.getName(xID);
xModel.setName(name != null ? name : "");

这比所有其他示例更具可读性,并且不需要对标准库及其 API 有深入了解。


以上是Java中是否有三元赋值运算符?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>