java流程控制

Java流程控制

分支結構

    用於根據條件來選擇性的執行某段代碼;

  • if條件語句
        使用布爾表達式或布爾值作爲分支條件來進行分支控制;有三種形式,if;if,else;if,else if,else;
第一種形式
if (logic expression) {
    statement...
}
第二種形式
if (logic expression) {
    statement...
} else {
    statement...
}
第三種形式
if (logic expression) {
    statement...
} else if (logic expression) {
    statement...
} else {
    statement...
}

    建議使用過程中不要省略if、else if、else 後面的花括號(具備更好的可讀性和減少錯誤的可能);
- switch條件語句
     switch後面只能跟byte、short、char、int四種整數類型,枚舉類型,java.lang.String類型(java7開始,不能是StringBuffer,StringBuilder類型);

switch(expression) {
    case condition1: 
        statement...;
        break;
    case condition2:
        statement...;
        break;
    case condition3:
        statement...;
        break;
    default:
        statement...;
}

    因爲switch語句執行時是先求出expression表達式的值,然後拿這個表達式去跟case標籤後面的值進行比較,如果遇到相等的值,開始執行這個case後面的代碼,就不再與後面的case,default標籤的值進行比較,直到遇到break,纔會結束;所以在使用中,每個case後面需加上break,除非你希望程序繼續執行當前case外的代碼塊;

循環結構

    用於根據循環條件重複執行某段代碼;

  • while循環
init_statement;//初始化語句
while(test_expression) {//循環條件
    statement;
    iteration_statement;//迭代語句
}

    while每次循環前都會對test_expression循環條件進行判斷,如果爲true,則執行循環體,否則跳過循環體;注意,如果在while循環條件的表達式的括號加;(eg:while(test_expression);{}),則將會進入死循環狀態;
- do while循環
    do while 與 while 的區別在於,while總是先判斷條件,條件爲真,才執行循環體;而do while 是先執行循環體再判斷循環條件,如果爲真則繼續執行,否則退出循環體;

init_statement;//初始化語句
do {
    statement;
    iteration_statement;//迭代語句
} while (test_expression);//循環條件
  • for循環
for(init_statement; test_expression; iteration_statement) {
    statement;
}
增強for循環
for(type element: array){
    statement;
}

    執行時先執行初始化語句 init_statement,初始化語句只在循環開始前執行一次;每次執行循環體前先進行 test_expression循環條件值的判斷,如果循環條件返回 true,才執行循環體;每次循環體執行完畢後,執行迭代語句 iteration_statement。
    for 循環與 while,do while 循環不一樣;由於 for 循環的迭代語句沒有跟循環體放在一起,所以不管是否遇到 continue 語句來結束本次循環,迭代語句都會被執行;而 while 和 do while 語句的迭代語句是和循環體放在一起,如遇到 continue 語句來結束循環體,則迭代語句(迭代語句放在continue後面)不會被執行;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章