J2SE 5.0(Enhanced for Loop)引入了一種新的更加簡潔的for語法用於數組和容器,及foreach語法,又稱強化的for循環,表示不必創建整型變量去對由訪問項構成的序列進行計數,foreach將自動產生每一項。
其基本語法如下:
- for(type element:array)
- {
- 語句或塊 //循環體
- }
其應用對象之一是在數組的依次存取上,下面通過實例加以說明
- int[] arr={1,2,3,4,5};
- for(int element:arr) //對比原來程序
- for(int i=0;i<arr.length;i++)System.out.print(element + ",");
- //輸出:1,2,3,4,5,
每一次從arr中取出的元素會自動設定給element,你不用自行判斷是否超過了數組的長度,注意element的類型必須與數組元素的元素類型相同。
如果是二維數組,可以把數組本身當成一個對象,這樣就會知道如何使用foreach存取二維數組。據個例子:
- int [][]arr=
- {
- {1,2,3},
- {4,5,6},
- {7,8,9}
- };
- for(int[] row : arr)
- {
- for(int element : row)
- {
- System.out.println(element);
- }
- }