JSON jsonObject.optString() 返回 String "null"

7 浏览
0 Comments

JSON jsonObject.optString() 返回 String "null"

我正在开发一个使用JSON进行服务器通信的Android应用程序,但是在尝试解析我的json文件时遇到了一个奇怪的问题。

这是来自服务器的json数据:

{

"street2": null,

"province": null,

"street1": null,

"postalCode": null,

"country": null,

"city": null

}

我通过调用address Json对象的optString("city", "")方法来获取城市的值。对于这种情况,我希望city是空的(这就是optString的作用),但实际上它包含了字符串"null"。因此,进一步的null检查或isEmpty检查将返回false,因为字符串包含文本。如果我调用address.isNull("city"),它将返回true,这是正确的。只有optString失败了。

我在Google和Stack Overflow上找不到关于这个问题的任何信息。我真的不明白为什么会发生这种情况,因为我以为optString会像我预期的那样工作。有人知道这里出了什么问题吗?

0