gpt4 book ai didi

java - 使用 INDEX 删除 ArrayList 中的元素导致 java.util.ConcurrentModificationException

转载 作者:行者123 更新时间:2023-12-01 09:27:38 27 4
gpt4 key购买 nike

以下代码导致

java.util.ConcurrentModificationException

我不知道如何解决这个错误,请帮忙!

ArrayList strList =  new ArrayList<String>(Arrays.asList(cmd.split(" ")));

if (strList.get(0).equals("LIST")) {

}

if (strList.get(0).equals("DEPEND")) {
strList.remove(0); // getting error at this point
cm.createComponent(strList);

}

完整方法外层循环与List无关

public static void main(String[] args) throws IOException {
ComponentManager cm = new ComponentManager();

List<String> lines = Files.readAllLines(Paths.get("cmdList.txt"));
for (String cmd : lines) {
ArrayList strList = new ArrayList<String>(Arrays.asList(cmd.split(" ")));

if (strList.get(0).equals("LIST")) {

}

if (strList.get(0).equals("DEPEND")) {
strList.remove(0);
cm.createComponent(strList);

}

if (strList.get(0).equals("INSTALL")) {

}

if (strList.get(0).equals("REMOVE")) {

}

}

}

最佳答案

您可以创建一个不同的 ArrayList 并在那里执行删除操作,或者在 arrayList 上放置一个迭代器并使用迭代器进行删除。

找到一些可能解决您问题的方法 herehere .

关于java - 使用 INDEX 删除 ArrayList 中的元素导致 java.util.ConcurrentModificationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39717058/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com