小编Jok*_*kii的帖子

为什么在短IF中发生NullPointerException

我编写了导致NullPointerException的简短Java代码.有没有人对此有解释?码:

int val = 2;
Boolean result = (val == 0) ? false : ((val == 1) ? true : null);
Run Code Online (Sandbox Code Playgroud)

以下(简化版)代码将导致NullPointerException:

Object result = (false) ? false : (false ? true : null);
Run Code Online (Sandbox Code Playgroud)

但是这个:

int val = 2;
Boolean result = (val == 0) ? Boolean.FALSE : ((val == 1) ? true : null);
Run Code Online (Sandbox Code Playgroud)

还有这个:

Object result = (false) ? Boolean.FALSE : (false ? true : null);
Run Code Online (Sandbox Code Playgroud)

或这个:

Object result = (false) ? (Boolean)false : (false ? true: null); …
Run Code Online (Sandbox Code Playgroud)

java nullpointerexception

11
推荐指数
1
解决办法
475
查看次数

标签 统计

java ×1

nullpointerexception ×1