JSONObject结果的Java检查null失败

JSONObject结果的Java检查null失败,java,json,Java,Json,检索结果如下: JSONObject data_array = new JSONObject ( received ); 我获取此字符串的任何空值: String c = data_array.getString ( "count_mobile" ); String o = data_array.getString ( "ok" ); String f =data_array.getString ( "faild" ); o和f值为null,我无法检查这些代码是否返回错误,并将null结果设

检索结果如下:

JSONObject data_array = new JSONObject ( received );
我获取此字符串的任何空值:

String c = data_array.getString ( "count_mobile" );
String o = data_array.getString ( "ok" );
String f =data_array.getString ( "faild" );
o和f值为null,我无法检查这些代码是否返回错误,并将null结果设置为变量

 if( data_array.getString ( "ok" ) != null )
      o = data_array.getString ( "ok" );

 if( data_array.getString ( "ok" ) != "" )
      o = data_array.getString ( "ok" );

 if( ! TextUtils.isEmpty(data_array.getString ( "ok" ) ) )
      o = data_array.getString ( "ok" );
使用方法如下

JSONObject.NULL.equals(data_array.getString ( "ok" ));

如果我正确理解了这个问题,那么您只希望在JSON中的属性值不为null、null或空的情况下对其进行修改。请尝试以下代码:

if (data_array.has("ok")
        && data_array.getString("ok") != null
        && !data_array.getString("ok").trim().equals("")
        && !data_array.getString("ok").equals("null")) {
    o = data_array.getString ( "ok" );
}

那么,如果data_array.getStringok返回null,您希望发生什么?你没有把o设为其他任何东西。一个简短但完整的程序演示这个问题在这里真的很有帮助…ok为null,代码为retuen false,但它为null,必须返回true@jJz请发布相同的代码或至少json,以及您到底想要什么