【发布时间】:2011-12-20 20:46:55
【问题描述】:
假设您有一个支持删除功能的 ArrayList - 它删除条目并将所有内容移到右侧的左侧。
如果我想在特定条件下从列表中删除某些东西,我可能会这样做:
for (int i = 0; i < list.size(); i++) {
if (condition) {
list.remove(i);
i--;
}
}
但这很丑陋,感觉很hackish。你可以用迭代器做同样的事情,但你不应该在使用迭代器时改变列表。
那么不丑的解决方案是什么?
【问题讨论】: