【发布时间】:2020-07-03 13:43:33
【问题描述】:
我正在尝试遍历 ArrayList 并在某些条件下(x == 0)删除实际对象(索引 s)。如果执行,它总是在应该删除对象的行处给出错误。没有remove(),它运行得很好。
int s = 0;
int x = 0;
if (!objectList.isEmpty()) {
for (obj actualObj : objectList) {
if (x == 0) {
objectList.remove(s);
} else {
System.out.println("x != 0");
}
s++;
}
} else {
System.out.println("list is empty");
}
【问题讨论】:
-
您遇到的错误是什么?
-
如果你已经知道它的索引,你不需要迭代删除一个元素
-
这里的
x和s是什么?它们似乎总是0,并且不受循环的影响 -
你的代码似乎有逻辑错误,也许你没有得到你想要实现的逻辑,无论如何参见howtodoinjava.com/java/collections/arraylist/…