gpt4 book ai didi

java - 为什么这段 ArrayList 代码会出错?

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

我预计1 c 3 o为了结果。但只得到1 c 3 o 5 c 。代码有什么问题?

ArrayList<String> A_array= new ArrayList<>();

A_array.add(0,"c"); B_array.add(0,1);
A_array.add(1,"c"); B_array.add(1,2);
A_array.add(2,"o"); B_array.add(2,3);
A_array.add(3,"c"); B_array.add(3,4);
A_array.add(4,"c"); B_array.add(4,5);
A_array.add(5,"c"); B_array.add(5,6);

for(int i=0;i<B_array.size()-1;i++)
{
for(int j=i+1;j<B_array.size();j++)
{
if(A_array.get(i)==A_array.get(j))
{
B_array.remove(j);A_array.remove(j);
}
}
}
for(int i=0;i<B_array.size();i++)
{
System.out.println(B_array.get(i)+" "+A_array.get(i));
}

最佳答案

要在遍历时安全地从 Iterable(例如 List)中删除对象,请使用 Iterator :

Iterator<String> iterator = list.iterator();
while(iterator.hasNext()) {
String s = iterator.next();
if(some comdition on s) {
iterator.remove();
}
}

关于java - 为什么这段 ArrayList 代码会出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22499512/

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