1. 程式人生 > >for循環的執行循序

for循環的執行循序

... har str expr 區別 循環 sys 初始化 ati

先上一段代碼,大家說出此方法的執行結果:

public class Print{
    static boolean out(char c){
        System.out.println(c);
        return true;
    }
    public static void main(String[] argv){
        int i = 0;
        for(out(‘A‘);out(‘B‘) && (i<2);out(‘C‘)){
            i++;
            out(‘D‘);
        }
    }
}

答案不說了,直接說解題思路吧

for循環的執行順序用如下表達式:

for(expression1;expression2;expression3){

expression4;

}

執行的順序應該是:

1)第一次循環,即初始化循環。

首先執行表達式expression1(一般為初始化語句);再執行expression2(一般為條件判斷語句),判斷expression1是否符合expression2的條件;如果符合,則執行expression4,否則,停止執行;最後執行expression3。

2)第N(N>=2)次循環

首先執行expression2,判斷在expression3是否符合在expression2要求;如果符合,則繼續執行在expression4,否則,停止執行。最後執行在expression3。如此往復,直至expression3不滿足在expression2條件是為止。

總結:

總的來說,執行的順序是一致的。先條件判斷(expression2),再函數體執行(expression4),最後for執行(expression3)。往復......區別在於,條件判斷的對象。第一次判斷時,對象為初始化語句(expression1),後續的判斷對象為執行後的結果(expression3)。

for循環的執行循序