gpt4 book ai didi

java - JsonObject 未正确填充表格

转载 作者:行者123 更新时间:2023-12-01 09:45:42 24 4
gpt4 key购买 nike

我正在尝试读取并解析 Json 文件;

JSONArray hops = (JSONArray) jsonObject.get("hops");
if (hops != null) {
Iterator<JSONObject> iterator = hops.iterator();

while (iterator.hasNext()) {
JSONObject itr = iterator.next();

rtt += (double) itr.get("rtt");
reply_ttl += (double) itr.get("reply_rtt");
probe_ttl += (long) itr.get("probe_ttl");
}
rtt = rtt / (hopCount * 2);
reply_ttl = (int) (reply_ttl / hopCount);
probe_ttl = (int) (probe_ttl / hopCount);
}

我可以正确获取 rtt,但 NullPointerException 返回 reply_ttlprobe_ttl 值。在调试时,我可以看到 itr 包含该文件具有的所有属性;

{
"icmp_type": 11,
"probe_id": 1,
"icmp_q_ipl": 44,
"reply_tos": 192,
"reply_ipid": 9760,
"icmp_q_ttl": 1,
"rtt": 0.264,
"reply_size": 56,
"probe_size": 44,
"icmp_code": 0,
"icmp_q_tos": 0,
"addr": "193.1.31.125",
"probe_ttl": 1,
"reply_ttl": 255
}

但是当我查看 itr 的 HashMap 值时,只有 9 个属性被放入表中。为什么Json节点没有全部放入表中?

最佳答案

这里可能有错字:

reply_ttl += (double) itr.get("reply_rtt");

您正在检查 key “reply_rtt”,但在底部的规范中,没有该名称的 key 。这是抛出异常的地方吗?

如果这不能解决您的问题,您能否为您的问题添加更多背景信息?这是 org.json 库吗?查看找到“hops”对象的 jsonObject 的内容以及如何声明其他变量会很有帮助。

关于缺失值,这个 JSON 库可能没有将 null 值放入其内部 HashMap 中。因此,例如,如果您读取字符串 "{\"key\":null}" 您可能只会得到一个空 map 。

关于java - JsonObject 未正确填充表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38060165/

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