gpt4 book ai didi

java - 删除时出现 UnsupportedOperationException

转载 作者:行者123 更新时间:2023-12-01 06:02:11 28 4
gpt4 key购买 nike

我正在尝试从 ArrayList 中删除重复项。但我不断收到此 UnsupportedOperationException

public static void removeDuplicates(List<Integer> list) {
Collections.sort(list);

for(int i = 0; i<list.size();i++) {
if(list.get(i)== list.get((i+1))) {
list.remove(i+1);
}

}

}

有一件事我无法创建新列表并更改它,因为我不应该返回任何内容。我必须就地更改列表。

最佳答案

使用 for 循环迭代元素时无法删除元素。解决此问题的一个简单方法是创建一个包含原始列表元素的新 ArrayList,然后循环遍历原始列表,从列表副本中删除重复项,然后返回该列表。

即使您可以使用 for 循环删除元素,另一件事也可能是 UnmodifyingCollection 类型的列表?如果是这样,您就无法从中删除元素,这就是该类的重点。同样,解决方案是创建一个全新的 ArrayList,它复制原始元素并删除和更改您喜欢的元素,然后将其返回给调用代码。

关于java - 删除时出现 UnsupportedOperationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55054737/

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