選擇語句入門基礎

選擇結構語句
選擇結構:也被稱爲分支結構。選擇結構有特定的語法規則,代碼要執行具體的邏輯運算進行判斷,邏輯運算的結果有兩個,
因此產生選擇,按照不一樣的選擇執行不一樣的代碼。Java語言提供了兩種選擇結構語句:if語句和switch語句
1、if語句       if語句有三種語法格式。
(1)、if語句第一種語法格式(適合一種判斷)
if(條件表達式){
    語句體;
}
執行流程:判斷條件表達式的結果,當爲true時,{}中的執行語句體纔會執行,不然不執行語句體。string

注意:
條件表達式的結果必須是布爾類型;if若是控制的語句只有一條,能夠不寫中括號{},直接跟語句體,但若是跟多條語句,大括號不能省略,
建議兩種狀況下都寫。
代碼示例演示:
[Java] 純文本查看 複製代碼
?
1
2
3
4
5
6
1.//if語句第一種語法格式 
        int i=6; 
        if(i%2==0){ 
            System.out.println("if條件爲true"); 
       } 
        System.out.println("over");
(2)、if語句第二種語法格式(適合兩種判斷)
if(條件表達式){
   語句體1;
}else{
   語句體2;
}
執行流程:一樣先判斷條件表達式的結果,若是爲true,則執行語句體1,爲false則執行語句體2.it

代碼演示:效率

[Java] 純文本查看 複製代碼
?
1
2
3
4
5
6
7
8
//if語句第二種語法格式 
       int j=-2; 
        if(j>0){ 
           System.out.println(j+"爲正數"); 
        }else{ 
            System.out.println(j+"爲負數"); 
        } 
        System.out.println("over");
 語法

(3)、if語句第三種語法格式(適合多種判斷)
if(條件表達式1){
語句體1;
}else if(條件表達式2){
語句體2;
}
...
else if(條件表達式n){
語句體n;
}else{
語句體n+1;
}
執行流程:首先判斷條件表達式1的結果,若是爲true,則執行語句體1,爲false則繼續判斷條件表達式2的結果,若是爲true,則執行語句體2,
爲false則繼續判斷下一個條件表達式的結果,以此類推,若是全部的判斷條件都爲false,則意味着全部的條件均未獲得知足,則執行語句體n+1。程序

代碼演示:static

[Java] 純文本查看 複製代碼
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
/size
font=微軟雅黑// if語句第三種語法格式  /size
font=微軟雅黑int scores = 88; 
if (scores >= 90) { 
     System.out.println("您的成績被評定爲A級"); 
} else if (scores >= 80) { 
     System.out.println("您的成績被評定爲B級"); 
} else if (scores >= 70) { 
      System.out.println("您的成績被評定爲C級"); 
} else if (scores >= 60) { 
      System.out.println("您的成績被評定爲D級"); 
 } else if (scores >= 0) { 
      System.out.println("您的成績被評定爲E級"); 
} else { 
      System.out.println("成績輸入有誤!!!"); 
}語言

2、switch語句
switch語句的語法格式:
switch(表達式){
   case 目標值1:
       執行語句1;
       break;
   case 目標值2:
       執行語句2;
       break;
       ......
   case 目標值n:
        執行語句n;
       break;
   default:
       執行語句n+1;
       break;
}co

執行流程:switch語句將表達式的值與每一個case中的目標值進行匹配,若是找到了匹配的值,會執行對應的case後的語句,遇到break就會結束。
若是沒找到任何匹配的值,就會執行default後的語句,而後程序結束。cas

注意:
(1)、表達式接收的值類型:在switch語句中的表達式只能是byte、short、char、int類型的值,若是傳入其餘類型的值,程序就會報錯。
(JDK5.0引入enum枚舉和JDK7.0接收String類型)。
(2)、case後面跟的是要和表達式進行比較的值,語句體部分能夠是一條或多條語句,break表示中斷,結束的意思,能夠結束switch語句,
default語句表示全部狀況都不匹配的時候,就執行該處的內容,和if語句的else類似。default能夠省略,但通常不建議,
default能夠放在switch語句的任何位置,通常放在最後位置,放在最後位置時緊跟它的break能夠省略。
(3)、switch結束的狀況:當程序執行過程當中遇到了break;當程序執行到了末尾處。枚舉

代碼演示:

[Java] 純文本查看 複製代碼
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public static void main(String[] args) { 
int month = 12; 
switch (month) { 
  case 1: 
  case 3: 
  case 5: 
  case 7: 
  case 8: 
  case 10: 
  case 12: 
     System.out.println(month + "月有31天!"); 
     break; 
  case 2: 
     System.out.println(month + "月有28天!");
     break; 
  case 4: 
  case 6: 
  case 9: 
  case 11: 
     System.out.println(month + "月有30天!"); 
     break; 
  default: 
     System.out.println("不存在該月!"); 
     break; 
     } 
}

注意:if和switch語句很像,那麼在具體場景下如何合理選擇使用哪一種語句呢?(1)、能用switch語句實現的均可以用if語句替換,而且if語句的條件表達式沒有任何限制,可是switch語句條件表達式的類型只能是byte、short、int、char這四種類型,以及後加入的枚舉和string,而且要注意break的使用。(2)、 If語句通常用於分支語句比較少的結構,而switch用於分支較多的結構。(3)、若是判斷具體數值很少,並且符合byte、short、int、char這四種類型雖然兩個語句均可以使用,但建議使用switch語句,由於效率稍高。其餘狀況,對區間判斷,對結果爲boolean型的判斷,使用if,if的使用範圍更廣。

相關文章
相關標籤/搜索