我收到此代码的java.lang.IndexOutOfBoundsException。
private List<Integer> LoeschenX = new ArrayList<Integer>();
private List<Integer> LoeschenY = new ArrayList<Integer>();
for (int i : LoeschenY) LoeschenX.add(LoeschenY.get(i));
答案 0 :(得分:6)
当你这样做时
for (int i : LoeschenY)
您正在遍历LoeschenY
的元素,而不是索引。您可能希望迭代索引,以便可以使用get(i)
:
for (int i = 0; i < LoeschenY.size(); i++)
LoeschenX.add(LoeschenY.get(i));
请记住,get(index)
将返回特定索引中的值。
修改:您也可以尝试
for (int i : LoeschenY)
LoeschenX.add(i);
由于i
采用LoeschenY
元素的值,您会将这些值添加到LoeschenX
。
答案 1 :(得分:1)
您似乎在迭代Y数组中的元素,但get
方法实际上使用元素作为索引的方式这样做。
尝试
for(int i : LoeschenY)
LoeschenX.add(i);
或者
for(int i = 0; i < LoeschenY.size(); i++)
LoeschenX.add(LoeschenY.get(i));