接收接口返回的null值也是要处理的,要返回类型是Integer类型的,你返回null就和声明一个变量初始化值给null一样的性质了,返回值为null没有错 关键是返回之后要进行判断if !=null 然后再操作
//
Integer 和 int 有一个 autoboxing的特性,我猜测是因为你返回 null。 而用到你这个返回值的时候 编译器会自动 转换成int。结果就报了空指针异常。可以看看 Integer的 源代码。 里面应该有涉及到 autoboxing 转换的方法。
Interger v;
//这样去判断值会保存
if(v == 1){
...
}else if(v == 0){
...
}else if(v == null){
...
}
//要进行判断if !=null 然后再操作,这样就不会报,要处理一下不等于空
if(v!=null){
if(v == 1){
...
}else if(v == 0){
...
}else if(v == null){
...
}
}else{
.....
}