0
我期望的結果是1 c 3 o
。但只有1 c 3 o 5 c
。 代碼有什麼問題?爲什麼這個ArrayList代碼得到一個錯誤?
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));
}
不使用''==比較字符串,使用'.equals() ' – Salah
如果您要在遍歷整個列表的同時修改列表,則應該向後瀏覽其內容。 – Henrik
預期結果背後的邏輯是什麼? –