java 在一个 list集合 里面删除一条 数据 添加多条数据, 要求 从添加后的数据下一条 开始 继续循环

java 在一个 list集合 里面删除一条 数据 添加多条数据, 要求 从添加后的数据下一条 开始 继续循环

                        if (!CommonFunctions.isEmpty(m1.getAbarCodes())) {
                            List<BomCustomer> dataList1 = bomCustomerMapperEx.selectByConditionBomFatherB(m1.getAbarCodes());

                            if (!dataList1.isEmpty()) {
                                List<BomCustomer> tempList1 = new ArrayList<>(); // 存储需要添加的元素
                                ListIterator<BomCustomer> dataListIterator = dataList1.listIterator();

                                while (dataListIterator.hasNext()) {
                                    BomCustomer m2 = dataListIterator.next();
                                    m2.setStandard(m1.getStandard());
                                    m2.setName(m1.getName());
                                    m2.setMaterialcode(m1.getMaterialcode());
                                    m2.setBarCodes(m1.getBarCodes());

                                    m2.setAmaterialcode(m1.getAmaterialcode());
                                    m2.setAname(m1.getAname());
                                    m2.setAstandard(m1.getAstandard());
                                    m2.setAsubmaterialusage(m1.getAsubmaterialusage());
                                    m2.setAmaterialrates(m1.getAmaterialrates());
                                    m2.setAmaterialusage(m1.getAmaterialusage());

                                    tempList1.add(m2); // 将需要添加的元素添加到tempList1中
                                    dataListIterator.remove();
                                }

                                int currentIndex = iterator.previousIndex(); // 获取当前位置的索引

                                for (BomCustomer temp : tempList1) {
                                    iterator.add(temp); // 在当前位置添加元素
                                }

                                iterator = resList.listIterator(currentIndex + tempList1.size() + 1); // 移动迭代器到下一个位置

                                tempList.add(m1); // 将需要删除的元素添加到tempList中
                            }
                        }
                    }

                    resList.removeAll(tempList); // 删除需要删除的元素

你可能感兴趣的:(Java开发,java,list,开发语言)