「流程控制」:程序能夠根據用戶數據的不一樣,執行不一樣的代碼。java
Java爲咱們的流程控制提供了幾種語句:code
1).if語句:作判斷的;作用域
2).switch語句:作判斷的;it
3).for語句:循環語句for循環
4).while語句:循環語句class
5).do_while語句:循環語句變量
/** *if語句有三種格式,分別以下 */ //格式一 if(布爾表達式){ //若是布爾表達式的結果爲:true,則執行這裏。 } //格式二 if(布爾表達式){ //若是true,執行這裏 }else{ //若是布爾表達式爲:false,執行這裏 } //格式三 if(布爾表達式1){ //若是布爾表達式1爲true,則執行這裏 }else if(布爾表達式2){ //若是布爾表達式1爲false,而布爾表達式2爲true,執行這裏 }else if(布爾表達式3){ //若是布爾表達式1,2爲false,而布爾表達式3爲true,執行這裏 }else{ //上述全部判斷均爲false,執行這裏 }
switch的做用同if語句同樣,都是作「判斷的」。只是在某些狀況下(對一個變量的多個等性判斷), 使用switch比if語句可讀性更強。循環
switch(變量/表達式--值:byte/short/int/char/String/枚舉類型){ case 值1://注意:值必須是一個常量,不能是變量,或者表達式 break; case 值2: break; ... default: break; }
注意:
1).多個case的值不能有重複的;
2).case和case之間,case和default之間沒有順序關係;程序
case的穿透性數據
1).case中的break;語句,表示:跳出switch語句。break能夠沒有,若是沒有,
當執行完這個case後,會無條件的繼續執行後面的case中的語句,
直到遇到break或者switch結束。
for(定義循環變量表達式 ; 布爾表達式 ; 增量表達式){ }
while(布爾表達式){ //循環體 }
// ... do{ //循環體 }while(布爾表達式); // ....
1).三種循環,它們的循環體中若是隻有一句話,能夠省略大括號(但不建議):
2).三種循環都有大括號,就意味着有「變量的做用域」,在循環大括號內定義的變量:只在本次循環內有效,在下次循環,或者結束循環後都不能被訪問:
3).while循環和do_while循環的區別:
- while循環:先判斷,後循環;
- do_while循環:先循環一次,而後再判斷,再循環....
跳出語句break和continue
1).break語句:只能用在switch和循環語句中
在switch中,表示:跳出switch語句;
在循環語句中,表示:跳出循環體,結束循環;2).continue語句:只能用在循環語句中,表示:結束本次循環,繼續下一次循環
class Demo { public static void main(String[] args) { int count = 0; while(true){ count++; System.out.println("HelloWorld!"); if(count == 5){ break; } } } }
嵌套循環:指循環內部還能夠定義其它循環。外層循環每執行一次,內層循環都要所有執行一次。
class Demo { public static void main(String[] args) { for(int n = 1 ; n <= 5 ; n++){ System.out.println("n = " + n); for(int m = 1 ; m <= 3 ; m++){ System.out.println("m = " + m); } } } }