项目需要使用的是net.sf.json.JSONArray的包,没有使用阿里巴巴的
JSONArray oo =XXXXX;
在需要oo.get()的方法来判断是不是null的时候,遇到了很大的坑,初始的想法就是:
if(oo.get(0)==null){
....
}
然后总是结果不是想要的,于是debug发现即使oo.get(0)的值null,程序也不走这个位置,所以这个位置应该不是这样的判断。
如下图所示:
网上查了一下,有的说使用isNULL()的方法判断,但是oo这个对象并没有isNULL()的方法。
json传递空值作为字符串,因此您不能将null检查为java元素。而是将null值视为字符串,以这种方式检查。
所以不能惯性的直接==null来判断,要把它当作是字符串来使用。
所以:
最终的解决办法是:如下所示