gpt4 book ai didi

Java Json 解析器数组

转载 作者:太空宇宙 更新时间:2023-11-04 11:48:26 25 4
gpt4 key购买 nike

这是我使用 java 代码成功加载的 JSON 字符串 [结果]。

{"result":[
{
"opened_at":"2017-02-06 10:48:55",
"sys_updated_by":"user",
"state":"6"
},
{
"opened_at":"2017-02-06 12:20:43",
"sys_updated_by":"user2",
"state":"1"
},
{
"opened_at":"2017-02-06 15:32:34",
"sys_updated_by":"user3",
"state":"1"
}
]
}

这是我将 JSON 数据保存在 JSONArray 中的部分。

JSONArray arr = obj.getJSONArray("result");
for (int i = 0; i < arr.length(); i++) {
String opened_at = arr.getJSONObject(i).getString("opened_at");
String sys_updated_by = arr.getJSONObject(i).getString("sys_updated_by");
String state = arr.getJSONObject(i).getString("state");

}

如何在控制台中打印来自 user2 的open_at(使用 System.out.println())?

最佳答案

如何从 user2 访问 open_at?

java.util.Map<String , Object> myMap = new java.util.HashMap<>();

for (int i = 0; i < arr.length(); i++) {
String opened_at = arr.getJSONObject(i).getString("opened_at");
String sys_updated_by = arr.getJSONObject(i).getString("sys_updated_by");
String state = arr.getJSONObject(i).getString("state");

// your CATCH
myMap.put( sys_updated_by , arr.getJSONObject(i) );
}

// IF YOUR ARE HARDCODING ACCESS
try
{
System.out.println( ( (JSONObject)myMap.get("user") ).getString("opened_at") + ((JSONObject)myMap.get("user2")).getString("opened_at") );
}
catch(Exception any){}

让 sys_update_by key-value 成为您对所有感兴趣字段的 JSONObject 的引用的关键,然后让它帮助您检索您感兴趣的记录,只需在 HashMap 中指定用户名,抱歉有一百万个更新,我肯定想讨论为什么这不是您正在寻找的答案

关于Java Json 解析器数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42077177/

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