我正在努力使用一种算法我想在当前列表上执行一些操作(更新、删除、添加元素),这些操作来自于第二个列表中的一个数据集。
我的第一个列表currentList和提交的列表submittedList
我要解决的问题是:
如果currentList的元素在submittedList中,则必须在currentList中更新此元素
如果当前列表中的某个元素不在submittedList中,则必须从当前列表中删除该元素
submittedList中不在当前列表中的所有A元素都必须添加到当前列表中
如果你能帮忙的话,谢谢

最佳答案

用不同的方式来思考这个问题。您需要currentList只有submittedList中的对象,但是如果两个列表中都有对象,则只需修改该对象所以你的算法只有两个步骤。
我的建议是列一份临时名单我在下面添加了一个解决方案,假设列表中的对象是字符串。(可以用自定义对象替换字符串)

List<String> tempList = new ArrayList<String>();
for(String test : submittedList) {
    if(currentList.contains(test)) {
        String test1 = test+"xyz"; // do modification to test String
        tempList.add(test1);
    } else {
        tempList.add(test);
    }
}
currentList.clear(); // Now add to the actual list after clearing
currentList.addAll(tempList);

10-01 23:06