gpt4 book ai didi

java - 如何从 JsonObject java 恢复值

转载 作者:行者123 更新时间:2023-12-01 17:46:19 24 4
gpt4 key购买 nike

我有一个 JsonObject 列表,我只想恢复 json 中两个变量的值。

在java 8中我没有找到函数getJSONObject,可能是它不被识别。首先,我将 json 添加到 JSONObject 列表中。但是当我想要获取它时,编辑器 Intellij 只建议使用 get 函数。

示例:records.get(0).get("id") 我得到了以下结果,但是当我想恢复内部变量时,例如:records.get(0) .get("id").get("875488")... 我收到错误。

My code:


JSONArray JSONArray = (JSONArray) obj;
List<JSONObject> records = new ArrayList<JSONObject>();

for (int i=0; i<JSONArray.size(); i++) {

records.add( (JSONObject) JSONArray.get(i) );

}

我尝试恢复 "lat""lon" 的第一个拖曳值,但无法到达。有人可以帮助我吗?

我想要这样的结果:

lat = 12.13

lon = 5.02

谢谢。

最佳答案

首先,JAVA-json 的正确 Maven/Gradle 依赖项是

<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20180813</version>
</dependency>

如果找不到方法JSONObject#getJSONObject,则说明您做错了什么。

<小时/>

对于代码部分,应该可以了。适应您的需求。

final JSONArray jsonArray = new JSONArray(source);
final int length = jsonArray.length();

for (int i = 0; i < length; i++) {
final JSONObject jsonObject = jsonArray.getJSONObject(i);
final JSONObject forecastOrig =
jsonObject.getJSONObject("875488")
.getJSONObject("forecast_orig");

final double lon = forecastOrig.getDouble("lon");
final double lat = forecastOrig.getDouble("lat");

System.out.println(lon);
System.out.println(lat);
}

关于java - 如何从 JsonObject java 恢复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54814641/

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