为什么在Java中引入此循环?它是Java创建的吗?它的目的是什么(提高内存/ cpu的使用效率)?
为什么在Java中引入此循环?
只是为了简化遍历通用集合和数组。代替
for (int i = 0; i < strings.length; i++) { String string = strings[i]; // ... }
你可以做
for (String string : strings) { // ... }
这使得代码更具可读性和更好的可维护性。
它是Java创作吗?
不,它早于Java就以其他语言存在。Java实施起来相对较晚。
目的是什么?
请参阅第一个答案。
要了解更多信息,请查阅有关该主题的《Sun指南》。
更新 :这并不意味着它使其他种类的循环变得多余。如果您要维护循环计数器以用于除按索引获取项以外的其他目的,则使用索引的for循环仍然有用。如果您想在循环内删除或更改集合本身的元素,则使用迭代器的for循环仍然有用。