java里使用jsonarray获取值判断null值无效的解决办法

项目需要使用的是net.sf.json.JSONArray的包,没有使用阿里巴巴的

JSONArray oo =XXXXX;

在需要oo.get()的方法来判断是不是null的时候,遇到了很大的坑,初始的想法就是:

if(oo.get(0)==null){
....
}

然后总是结果不是想要的,于是debug发现即使oo.get(0)的值null,程序也不走这个位置,所以这个位置应该不是这样的判断。

如下图所示:

java里使用jsonarray获取值判断null值无效的解决办法_第1张图片

网上查了一下,有的说使用isNULL()的方法判断,但是oo这个对象并没有isNULL()的方法。

json传递空值作为字符串,因此您不能将null检查为java元素。而是将null值视为字符串,以这种方式检查。

所以不能惯性的直接==null来判断,要把它当作是字符串来使用。

所以:

最终的解决办法是:如下所示

java里使用jsonarray获取值判断null值无效的解决办法_第2张图片

 

你可能感兴趣的:(Java)