我有一个如下所示的 Java 命令:
Foo f = new Foo();
String string = f.format(new Bar().getSelection());
// ^ may be null
有时我的Bar
对象可能返回 null,这是设计使然。
对我来说,很自然的做法是将命令拆分为多行并分别进行空值检查,例如:
Foo f = new Foo();
BarSel bs = new Bar().getSelection();
String string = "";
if (bs != null) {
string = f.format(bs);
// continue...
}
但是,我想知道是否有办法在一行中做到这一点?是否可以对内联对象进行空检查?
我似乎记得读过关于能够使用问号的文章,但我不记得确切的语法,我可能错了。请注意,我指的不是三元运算符,尽管这是另一种有效的方法。