Sam*_*hin 0 java conditional-operator
我对 Java 还很陌生,我试图检查一个变量是否为空,如果不是,则使用它的值。以前的开发人员写的东西是这样的:
xModel.setName(xService.getName(xID) != null ? xService.getName(xID) : "");
Run Code Online (Sandbox Code Playgroud)
我想重构它,这样我就不必两次使用 xService 来获得名称。
我知道我可以预先存储该值,但这只是一个示例。我只是想知道是否有办法在 Java 中做到这一点?
谢谢。
我不同意所有其他答案。它们需要通过从标准库中导入结构来获得特定版本的特殊功能,或者在这种特定情况下工作的模糊调用,总而言之,只是隐藏了您尝试做的事情的简单性。
保持简单(KISS)。不要在不需要时引入更多的复杂性和概念。您正在重构另一个开发人员的代码,这意味着这是一个其他人稍后可能会阅读您的代码的项目。所以保持简单。
String name = xService.getName(xID);
xModel.setName(name != null ? name : "");
Run Code Online (Sandbox Code Playgroud)
这比所有其他示例更具可读性,并且不需要对标准库及其 API 有深入了解。
| 归档时间: |
|
| 查看次数: |
99 次 |
| 最近记录: |