【发布时间】:2010-08-29 17:22:23
【问题描述】:
我正在浏览以下代码示例:
public class GenericTest {
public static void main (String[] args) {
ArrayList<String> myList = new ArrayList<String>();
String s1 = "one";
String s2 = "two";
String s3 = "three";
myList.add(s1); myList.add(s2); myList.add(s3);
Iterator<String> itr = myList.iterator();
String st;
while (itr.hasNext()) {
st = itr.next();
System.out.println(st);
}
}
}
我想知道使用 Iterator 接口的实现而不是使用普通的 for-each 循环有什么好处?
for (String str : myList) {
System.out.println(str);
}
如果这个例子不相关,什么情况下我们应该使用迭代器?
【问题讨论】:
-
一方面,for-each 循环既不简单也不陈旧:它在 Java 5 中被正式引入为“增强的 for 循环”。