三元条件运算符的类型由其第二和第三操作数的类型确定。
如果是
input == null ? null : 1
类型是
Integer,可以同时分配
null和
1。
编译器允许您的方法返回,
Integer因为它可以自动拆箱为
int,因此适合
int返回类型
myMethod。
NullPointerException编译器无法检测到您的特定代码可能抛出a的事实。

三元条件运算符的类型由其第二和第三操作数的类型确定。
如果是
input == null ? null : 1
类型是
Integer,可以同时分配
null和
1。
编译器允许您的方法返回,
Integer因为它可以自动拆箱为
int,因此适合
int返回类型
myMethod。
NullPointerException编译器无法检测到您的特定代码可能抛出a的事实。