¿Cómo puedo detectar cuando un valor json es nulo? por ejemplo: [{"username": null}, {"username": "null"}]
El primer caso representa un nombre de usuario inexistente y el segundo un usuario llamado "nulo". Pero si intenta recuperarlos, ambos valores dan como resultado la cadena "nulo"
JSONObject json = new JSONObject("{\"hello\":null}");
json.put("bye", JSONObject.NULL);
Log.e("LOG", json.toString());
Log.e("LOG", "hello="+json.getString("hello") + " is null? "
+ (json.getString("hello") == null));
Log.e("LOG", "bye="+json.getString("bye") + " is null? "
+ (json.getString("bye") == null));
La salida del registro es
{"hello":"null","bye":null}
hello=null is null? false
bye=null is null? false
has(java.lang.String);
método