【发布时间】:2019-10-08 20:53:03
【问题描述】:
即使我明确检查列表的值是否为null,我的三元运算符仍在抛出NullPointerException。但是,如果我在三元运算符周围添加括号,我的代码就可以工作。
不带括号的代码(抛出异常):
final List<String> listData = null;
System.out.println("Insert new data (Created Monitorings) : " +
listData != null ? listData.size() : 0);
带括号的代码(工作正常):
final List<String> listData = null;
System.out.println("Insert new data (Created Monitorings) : " +
(listData != null ? listData.size() : 0));
谁能解释一下它是如何工作的。
【问题讨论】:
-
NullPointerException 不是编译错误
-
@GhostCat 是的!!!谢谢你:)
标签: java nullpointerexception ternary-operator