我正在阅读针对问题“Do we ever need to use Iterators on ArrayList?”提供的答案。
在答案中,用户说了这样一句话:“使用 ArrayList 的迭代器的一个重要用例是在迭代时删除元素”。
即使在 Java 中使用 ArrayList 的 remove 方法也可以实现此目的。我的问题是为什么我们需要在 ArrayList 中使用迭代器?
考虑以下代码:
import java.util.*;
public class ocajp66 {
public static void main(String[] args) {
ArrayList a = new ArrayList();
for (int i = 0; i < 10; i++) {
a.add(i);
}
System.out.printf("BEFORE ITERATOR\n");
for (int i = 0; i < a.size(); i++) {
System.out.printf("I:%d\n", a.get(i));
}
System.out.printf("AFTER ITERATOR\n");
Iterator i = a.iterator();
while (i.hasNext()) {
System.out.printf("I:%d\n", i.next());
}
}
}
有谁能解释一下迭代器的重要性吗?如果您能用代码来解释,那将是非常棒的。