我有一个对象列表,正在转换为 JSONArray。我正在遍历 JSONObjects 并制作一个 JSONObjects 数组。现在,我想避免将重复对象插入到 JSONArray 中。请在下面找到我的java代码。JSONArray responseArray1 = new JSONArray();if (!itemList.isEmpty()){ jsonArray = new JSONArray(itemList); for (int i = 0; i < jsonArray.length(); i++) { JSONObject jsonObj = jsonArray.getJSONObject(i); JSONObject responseObj = new JSONObject(); String attr_label = jsonObj.optString("attr_label"); if(StringUtils.equalsIgnoreCase(attr_label, "long_description")) { long_description = jsonObj.optString("value"); } else if(StringUtils.equalsIgnoreCase(attr_label, "description")) { description = jsonObj.optString("value"); } responseObj.put("id", jsonObj.opt("id")); // i will get duplicate id responseObj.put("code", jsonObj.opt("code")); // i will get duplicate code responseObj.put("long_description", long_description); responseObj.put("description", description); responseArray1.put(responseObj); }}请找到我的实际 jsonArray :[ { "code":"xyaz", "attr_label":"long_description", "id":"12717", "value":"Command Module" }, { "code":"xyaz", "attr_label":"description", "id":"12717", "value":"Set Point Adjustment" },]我期待像下面的 jsonArray :[ { "code":"xyaz", "id":"12717", "long_description":"Command Module" "description" : "Set Point Adjustment" }]
2 回答
繁星点点滴滴
TA贡献1803条经验 获得超3个赞
创建一个临时数组列表并在该 arrayList 中添加唯一代码并检查它是否已存在于 arrayList 中然后不要再放这个
String code = jsonObj.opt("code");
if(!arrayList.contains(code))
{
arrayList.add(code);
responseObj.put("id", jsonObj.opt("id"));
responseObj.put("code", jsonObj.opt("code"));
responseObj.put("long_description", long_description);
responseObj.put("description", description);
}
添加回答
举报
0/150
提交
取消