gpt4 book ai didi

java - 如何检查 JSON 对象在 Java 中是否为空?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:49:32 26 4
gpt4 key购买 nike

在 Java 中,如果我使用以下 JSON 字符串作为示例,我将如何检查对象是否为 empty/null

{"null_object_1" : [], "null_object_2" : [null] }

我试过使用:

if(!jsonSource.isNull("null_object_1"))  {/*null_object_1 is not empty/null*/}
if(!jsonSource.isNull("null_object_2")) {/*null_object_2 is not empty/null*/}

但是这些 IF 语句仍然返回 true(就好像它们不为空/null)。

有没有人有解决办法?

编辑:我所说的“对象”实际上是指 array

最佳答案

这两个东西都不是null;他们是数组。结果正是您所期望的。

您的一个数组是空的,另一个包含一个 null 的元素。

如果你想知道一个数组是否为空,你需要获取数组,然后检查它的长度。

JSONObject myJsonObject = 
new JSONObject("{\"null_object_1\":[],\"null_object_2\":[null]}");

if (myJsonObject.getJSONArray("null_object_1").length() == 0) {
...
}

编辑以澄清:没有元素(空)的数组和包含null 元素的数组是完全不同的东西 .对于第二个数组,它既不是 null 也不是空的。正如我所提到的,它是一个包含单个元素的数组,该元素为 null。如果您有兴趣确定是否是这种情况,则需要获取数组然后遍历它以测试每个元素以查看它是否为 null 并相应地根据结果采取行动。

关于java - 如何检查 JSON 对象在 Java 中是否为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8954708/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com