java for迴圈順序問題
阿新 • • 發佈:2019-02-17
for
(表示式
1
;表示式
2
;表示式
3
)
{
//迴圈體
}
先執行“表示式1”,再進行“表示式2”的判斷,判斷為真則執行 “迴圈體”,迴圈體執行完以後執行表示式3.
例如
for(int i=0;i<2;i++){
//TODO
}
先執行 int i = 0;
然後 判斷 i<2
然後執行函式體
最後執行i++
然後輪迴到判斷i<2
- int[] arr = newint[3];
- int j;
- arr[0] = 1;
- arr[1] = 2;
- arr[2] = 3;
- int searchKey = 3
- for( j=0;j<arr.length ;j++){
- System.out.println("j1========="+j);
- if(arr[j] == searchKey){
- break;
- }
- }
- System.out.println("j2========="+j);
執行結果
j1=========0
j1=========1
j1=========2
j2=========2
- int[] arr = newint[3];
- int
- arr[0] = 1;
- arr[1] = 2;
- arr[2] = 3;
- int searchKey = 4;
- for( j=0;j<arr.length ;j++){
- System.out.println("j1========="+j);
- if(arr[j] == searchKey){
- break;
- }
- }
- System.out.println("j2========="+j);
執行結果
j1=========0j1=========1
j1=========2
j2=========3
對比以上兩段程式碼以及執行結果,迴圈體中 break 後,表示式3將不會執行,即第一塊程式碼中最後一次j++未執行