這種有冒號的for循環叫做foreach循環,foreach語句是java5的新特征之一,在遍歷數組、集合方面,foreach為開發人員提供了極大的方便。
foreach語句是for語句的特殊簡化版本,但是foreach語句並不能完全取代for語句,然而,任何的foreach語句都可以改寫為for語句版本。
foreach並不是一個關鍵字,習慣上將這種特殊的for語句格式稱之為“foreach”語句。從英文字面意思理解foreach也就是“for 每一個”的意思。實際上也就是這個意思。
foreach的語句格式:
1 for(元素類型t 元素變量x : 遍歷對象obj){
2 引用了x的java語句;
3 }
其實,個人覺得,foreach語句de格式寫成這樣更好理解:
1 for(數組類型t 變量x :數組名a){
2
3 引用了xd的java語句;
4 }
示例代碼:
程序的目的是:使用foreach循環輸出一個數組的各個元素
*******************學生類*****************
package foreach;
public class Student {
private int stuNumber;
private String name;
private int age;
public int getStuNumber() {
return stuNumber;
}
public void setStuNumber(int stuNumber) {
this.stuNumber = stuNumber;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
**********************數組類(方法類)***************
foreach循環的實現方法:
package foreach;
import java.util.Scanner;
public class StuArray {
Scanner sc=new Scanner(System.in);
int b[]={1,2,3,4,5,6};
public void showall(){
for(int j:b){ //注意: 這裡的是一個隨意的變量,換成嗎m,n 都行
System.out.println(j); //這裡方法的參數是上面的隨意變量,且要保持一致,不要把參數傳成了字符串
}
}
*********************測試類(主類)*****************
package foreach;
public class Test {
/**
* foreach
*/
public static void main(String[] args) {
StuArray sr=new StuArray();
sr.showall();
}
}
運行結果如下:
和預期一致。