gpt4 book ai didi

java - 将for循环中的JSONObject添加到外面的JSONObject中

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

我试图在 for 循环 JSONobject stops 中添加所有 JSONobject arrivals 但我总是只得到一个 JSONObject 停止。如何将所有 arrivales JSONObject 放入 JSONObject stops 的 for 循环中?

我正在使用 json 库 org.json。

感谢任何帮助

  JSONObject stops = new JSONObject(); 

for (Entry<String, List<String>> entry : map.entrySet()) {
String key = entry.getKey();
List<String> timeEntries = entry.getValue();
try {
stops.put("stops_name", key);

JSONObject arrivals = new JSONObject();
JSONArray arrivalMoFr = new JSONArray();

JSONArray timeArray = new JSONArray(timeEntries);
arrivalMoFr.put( timeArray);

arrivals.put("mon-fri", arrivalMoFr);

stops.put("arrival_time", arrivals);

System.out.println(stops.toString(3));
} catch (JSONException e) {
e.printStackTrace();
}
}

最佳答案

在循环外声明对象并在循环中不断添加项目。每次循环运行时都会实例化您的 arrivals 和 arrivalMoFr 并且您获得最后一个项目。试试这个

   JSONObject stops = new JSONObject(); 
JSONObject arrivals = new JSONObject();
JSONArray arrivalMoFr = new JSONArray();

for (Entry<String, List<String>> entry : map.entrySet()) {
String key = entry.getKey();
List<String> timeEntries = entry.getValue();
try {
stops.put("stops_name", key);



JSONArray timeArray = new JSONArray(timeEntries);
arrivalMoFr.put( timeArray);

arrivals.put("mon-fri", arrivalMoFr);

stops.put("arrival_time", arrivals);

System.out.println(stops.toString(3));
} catch (JSONException e) {
e.printStackTrace();
}
}

关于java - 将for循环中的JSONObject添加到外面的JSONObject中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30781427/

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