惭愧,刚刚发现Java中的 "For-each"...

一直思维定式般的只知道for的一种写法:for(int i; i<n; i++) ... 昨天才偶然发现java中的类似foreach用法,见下表

For-each loop Equivalent for loop
for (type var : arr) {
    body-of-loop
}
for (int i = 0; i < arr.length; i++) { 
    type var = arr[i];
    body-of-loop
}
for (type var : coll) {
    body-of-loop
}
for (Iterator<type> iter = coll.iterator(); iter.hasNext(); ) {
    type var = iter.next();
    body-of-loop
}

需要注意的是这种方式是只读操作不能赋值,只能向前不能后退,每次只能读一个不能做前后比较,每次只处理一个array不能两个array相比较。至少要求java5.



信息来源:http://www.leepoint.net/notes-java/flow/loops/foreach.html

你可能感兴趣的:(java)