gpt4 book ai didi

程序中出现java.util.ConcurrentModificationException

转载 作者:行者123 更新时间:2023-12-02 02:25:52 25 4
gpt4 key购买 nike

我正在尝试从 List<Integer> data 复制有限数量的元素从 main 方法传递到另一个 List<Integer> remainder 。当我调试程序并逐步运行代码行时,没有错误。但是当我尝试正常运行代码时,我得到 ConcurrentModificationError 。我查看了其他 SO 线程,但无法解决它。

public static List<Integer> calculate_remainder(List<Integer> data, int[] polynomial, List<Integer> append)
{
List<Integer> remainder = new ArrayList<>();
List<Integer> temp = new ArrayList<>();
Iterator<Integer> data_iterator = data.iterator();

data = Main.append(data, append);

for (int i = 0; i < polynomial.length; i++)
{
if (data_iterator.hasNext())
{
remainder.add(data_iterator.next());
}
}

更新1:

public static List<Integer> append(List<Integer> data, List<Integer> append)
{
data.addAll(append);
return data;
}

最佳答案

当创建 Iterator 后基础列表发生更改时,

Iterator 会抛出 ConcurrentModificationException(在 ArrayList JavaDoc 中搜索fail-fast) .

尝试将 Iterator 的创建移至 Main.append 调用之后。

关于程序中出现java.util.ConcurrentModificationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47776769/

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