第一个是原始的循环。您初始化变量,设置终止条件,并提供状态递增/递减计数器(有例外,但这是经典的)
为了那个原因,
for (int i=0;i
System.out.println(myString[i]);
}
是正确的。
对于Java 5,提出了一种替代方案。可以支持任何实现迭代的事情。这在集合中特别好。例如,您可以像这样迭代列表
List list = ....load up with stuff
for (String string : list) {
System.out.println(string);
}
代替
for (int i=0; i
System.out.println(list.get(i));
}
所以这只是一个替代的符号。任何实现Iterable的项目(即可以返回迭代器)都可以这样写出。
幕后发生的事情是这样的:(更有效率,但是我明确地写它)
Iterator it = list.iterator();
while (it.hasNext()) {
String string=it.next();
System.out.println(string);
}
最后只是句法糖,而且方便。