我有这样的条件:
if (someObject != null)
{
templateUri = someObject .getSettingsObject() != null
? someObject .getSettingsObject().getPlanUri() : null;
}
我可以将这个条件添加到一个语句中并运行我的代码而不会获得NULL指针异常,而不是使用多个空值检查吗?
答案 0 :(得分:0)
最好创建一个处理案例的方法,但只需一个语句即可:
templateUri = (someObject != null) ? (someObject.getSettingsObject()!=null ? someObject.getSettingsObject().getPlanUri() : null ) : templateUri;
如果someObject
为空,templateUri
将被替换为自身。
答案 1 :(得分:0)
您可以使用嵌套条件运算符( ? : )
templateUri = someObject == null ? null
: someObject .getSettingsObject() == null ? null
: someObject .getSettingsObject().getPlanUri();