NullPointerException由于使用三元运算符,条件表达式和不同的数值类型,因此会得到a
。在三元表达式中混合使用不同类型的数值时,Java具有复杂的规则
JLS Section15.25。
鉴于
endOfData()被preceived以回报
Integer,而
localcount为
int,爪哇unboxes的价值
endOfData()。但是,给定
endOfData()返回null,则取消装箱操作将导致null指针异常。
您可以继续使用if语句,也可以将localcount声明为
Integer。



