1. 程式人生 > >java for迴圈順序問題

java for迴圈順序問題

for(表示式1;表示式2;表示式3{//迴圈體}

先執行“表示式1”,再進行“表示式2”的判斷,判斷為真則執行  “迴圈體”,迴圈體執行完以後執行表示式3.

例如

for(int i=0;i<2;i++){
//TODO
}
先執行 int i = 0;
然後 判斷 i<2
然後執行函式體
最後執行i++
然後輪迴到判斷i<2

  1. int[] arr = newint[3];          
  2.               int j;  
  3.         arr[0] = 1;  
  4.         arr[1] = 2;  
  5.         arr[2] = 3;  
  6.         int searchKey = 3
    ;  
  7.         for( j=0;j<arr.length ;j++){  
  8.            System.out.println("j1========="+j);  
  9.            if(arr[j] == searchKey){  
  10.               break;  
  11.            }  
  12.         }  
  13.         System.out.println("j2========="+j);  

執行結果

j1=========0
j1=========1
j1=========2
j2=========2

  1. int[] arr = newint[3];  
  2. int
     j;  
  3. arr[0] = 1;  
  4. arr[1] = 2;  
  5. arr[2] = 3;  
  6. int searchKey = 4;  
  7. for( j=0;j<arr.length ;j++){  
  8.    System.out.println("j1========="+j);  
  9.    if(arr[j] == searchKey){  
  10.       break;  
  11.    }  
  12. }  
  13. System.out.println("j2========="+j);  

執行結果

j1=========0
j1=========1
j1=========2
j2=========3

對比以上兩段程式碼以及執行結果,迴圈體中 break 後,表示式3將不會執行,即第一塊程式碼中最後一次j++未執行