gpt4 book ai didi

java - 如何从对象内部的数组中获取内部值?

转载 作者:行者123 更新时间:2023-12-02 06:14:30 25 4
gpt4 key购买 nike

我想从 JSON 中获取纬度和经度值,它由两个对象“stoppage”和“routePlaceback”组成,现在我只能从“routePlaceback”获取数据,但我不知道如何获取仅获取纬度和经度的值?代码如下,

import java.io.FileReader;
import java.util.ArrayList;
import java.util.Iterator;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;

public class Finder_Json
{
@SuppressWarnings("rawtypes")
public static void main(String[] args) throws Exception
{
// parsing JSON file
Object sampleFile_object = new JSONParser().parse(new FileReader("sample.json"));

// typecasting object to JSONObject
JSONObject sampleFile_JSONObject = (JSONObject) sampleFile_object;

JSONArray routePlaceback = (JSONArray) sampleFile_JSONObject.get("routePlaceback");
Iterator iterator_1 = routePlaceback.iterator();

while (iterator_1.hasNext())
{
System.out.println(iterator_1.next());
System.out.println("\n");
}
}
}

我的 sample.json 文件包含,

{
"stoppage":
[
{
"latitude": "23.074207",
"longitude": "72.557227",
"record_date": 1556217000,
"start_time": 1556217000,
"end_time": 1556304360,
"duration_time": 1456
}
],
"routePlaceback":

[
{
"distance": 0.36,
"longitude": "72.502385",
"ignition": 1,
"record_date": 1556303400,
"speed": 53.708,
"latitude": "23.034403"
},
{
"distance": 0.38,
"longitude": "72.506072",
"ignition": 1,
"record_date": 1556303430,
"speed": 25.927999,
"latitude": "23.034045"
}
]
}

这是我运行上述代码时得到的结果,

enter image description here

但我想要的输出是,

23.034403, 72.502385

23.034045, 72.506072

最佳答案

您可以在显示时提取所需的值:

while (iterator_1.hasNext())
{
JSONObject obj = (JSONObject) iterator_1.next()l
System.out.println(obj.get("latitude")+" , "+obj.get("longitude"));
System.out.println("\n");
}

关于java - 如何从对象内部的数组中获取内部值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55879753/

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