采用迭代器Iterator,这种方式可以正常的循环及删除。
Iterator2、使用map结构,以key-value的方式存储数据it = list.iterator(); while(it.hasNext()){ String x = it.next(); if(x.equals("delete")){ it.remove(); } }
示例代码中,以省份为key,在遍历value值时,根据key查询map数组:若已存在该key,则dto直接存入value中,若该key不存在,则新建key-value,存储到map中
Map> insuMap = new HashMap<>(); //insureInfoDTOS -> 要存储在map中的value值 for (PsnInsureInfoDTO psnInsureInfoDTO : insureInfoDTOS) { // 人员信息三要素重新赋值 psnInsureInfoDTO.setCertType(psnBasicInfoDTO.getCertType()); psnInsureInfoDTO.setCertNo(psnBasicInfoDTO.getCertNo()); psnInsureInfoDTO.setName(psnBasicInfoDTO.getName()); //获取省份key值 String province = psnInsureInfoDTO.getPoolarea().substring(0, 2); List insureInfoDTOList = insuMap.get(province); if (null == insureInfoDTOList) { insureInfoDTOList = new ArrayList<>(); insureInfoDTOList.add(psnInsureInfoDTO); insuMap.put(province, insureInfoDTOList); } else { insureInfoDTOList.add(psnInsureInfoDTO); } }



