为了账号安全,请及时绑定邮箱和手机立即绑定

使用java将jsonobjects添加到jsonarray时避免重复

使用java将jsonobjects添加到jsonarray时避免重复

Helenr 2021-05-31 09:20:45
我有一个对象列表,正在转换为 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);

}


查看完整回答
反对 回复 2021-06-02
  • 2 回答
  • 0 关注
  • 366 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信