我知道有一种方法可以用简短的形式编写Java if
语句。
if (city.getName() != null) {
name = city.getName();
} else {
name="N/A";
}
有人知道如何将上述5行的缩写写成一行吗?
发布于 2012-01-18 00:59:39
使用三元运算符:
name = ((city.getName() == null) ? "N/A" : city.getName());
我认为你有倒退的条件-如果它是null,你想要的值是"N/A“。
如果city为空怎么办?在这种情况下,你的代码就完蛋了。我会添加另一项检查:
name = ((city == null) || (city.getName() == null) ? "N/A" : city.getName());
发布于 2012-01-18 01:04:34
为了避免两次调用.getName()
,我将使用
name = city.getName();
if (name == null) name = "N/A";
发布于 2012-01-18 01:01:08
方法是使用三元运算符:
name = city.getName() == null ? city.getName() : "N/A"
然而,我相信你在上面的代码中有一个拼写错误,你的意思是说:
if (city.getName() != null) ...
https://stackoverflow.com/questions/8898590
复制相似问题