第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

Java 條件語句

條件語句通過判斷給定條件的真假來控制程序的執(zhí)行。在上一小節(jié)中,我們已經簡要介紹過了語句和塊的概念。那么本小節(jié)我們將進一步展開介紹 Java 中所有類型的條件語句。

1. if 語句

1.1 語法

當我們需要根據(jù)給定的條件來決定是否執(zhí)行一段代碼時,if 語句就派上用場了。if 塊僅在與其關聯(lián)的布爾表達式為 true 時執(zhí)行。if 塊的結構如下:

if (條件) {
    // 當條件成立時執(zhí)行此處代碼
}

大括號中包含的內容就稱為語句塊。

1.2 實例

我們來看一個 if 語句的實例:

實例演示
預覽 復制
復制成功!
public class IfStatement1 {
    public static void main(String args[]) {
        int age = 18;
        if(age >= 18) {
            System.out.println("在中國你已經成年");
        }
    }
}
運行案例 點擊 "運行案例" 可查看在線運行效果

運行結果:

在中國你已經成年

條件age >= 18 成立時,也就是布爾表達式計算結果為 true(真),if 語句塊會執(zhí)行。顯然上面實例中 age 變量的值為 18,條件是成立的,執(zhí)行程序,屏幕上將會打印 “在中國你已經成年”。

如果語句塊內只有一條語句,我們也可以去掉花括號 {}

if(age >= 18)
    System.out.println("在中國你已經成年");

當然,即使 if 語句塊只有一條語句,也并不推薦這種不易于閱讀的寫法。

2. if … else … 語句

2.1 語法

if 語句可以結合 else 來使用,當布爾表達式計算結果為 false (假)時,else 語句塊將會執(zhí)行。

if .. .else 語句用于有條件地執(zhí)行兩個代碼塊的其中一個,具體執(zhí)行哪一個代碼塊,取決于布爾條件的結果。

if (條件) {
    // 如果條件成立,執(zhí)行此處代碼
} else {
    // 如果條件不成立,執(zhí)行此處代碼
}

2.2 實例

改寫上面 if 語句的代碼:

實例演示
預覽 復制
復制成功!
public class IfElseStatement1 {
    public static void main(String args[]) {
        int age = 15;
        if(age >= 18) {
            System.out.println("在中國你已經成年");
        } else {
            System.out.println("在中國你還未成年");
        }
    }
}
運行案例 點擊 "運行案例" 可查看在線運行效果

運行結果:

在中國你還未成年

我們將變量 age 賦值為 15,并且在 if 語句塊的后面加了一段 else {...} 語句塊。這個時候,條件 age >= 18 的計算結果就為 false 了,程序將會執(zhí)行 else 語句塊中的代碼。執(zhí)行代碼,屏幕將會打印 "在中國你還未成年"。

補充

Java 支持使用條件表達式(又稱三目運算符)表達式1 ? 表達式2 : 表達式3 來簡化 if else 語句的代碼。

表達式 1 的作用等同于 if 語句后面的條件,如果表達式 1 為 true, 則執(zhí)行 表達式2, 否則執(zhí)行 表達式3

也就是說上面的代碼可以使用三目運算符來實現(xiàn)同樣的功能。實例如下:

實例演示
預覽 復制
復制成功!
public class IfElseStatement2 {
    public static void main(String args[]) {
        int age = 15;
        System.out.println(age >= 18 ? "在中國你已經成年" :  "在中國你還未成年"); 
    }
}
運行案例 點擊 "運行案例" 可查看在線運行效果

3. if … else if … else 語句

3.1 語法

if 語句可以結合 else if 來實現(xiàn)更復雜的程序分支結構:

if (條件1) {
    // 如果條件1成立,執(zhí)行此處代碼
} else if (條件2) {
    // 如果條件1不成立,并且條件2成立,執(zhí)行此處代碼
} else {
    // 如果條件1、條件2都不成立,執(zhí)行此處代碼
}

3.2 實例

if 語句可以搭配任意多數(shù)量的 else if 語句使用,但是只能有一個 else。下面我們來看一段代碼:

實例演示
預覽 復制
復制成功!
// 根據(jù)給定分數(shù)向屏幕打印評級
public class IfElseIfStatement {
	  public static void main(String args[]) {
        int score = 70;
        if (score >= 90) {
          	System.out.println("優(yōu)秀");
        } else if(score >= 70) {
          	System.out.println("良好");
        } else if (score >= 60) {
          	System.out.println("及格");
        } else {
          	System.out.println("不及格");
        } 
    }
} 
運行案例 點擊 "運行案例" 可查看在線運行效果

運行結果:

良好

運行結果為 "良好",你也許會疑惑,score 為 70,同樣也大于等于 60,為什么沒有輸入 "及格" 呢?
這是由于當程序遇到符合條件的分支就會執(zhí)行其分支語句塊中的語句,不會執(zhí)行其他分支語句塊的語句。

3.3 嵌套 if … else 語句

你也可以在另一個 if 或者 else if 語句中使用 if 或者 else if 語句:

if(條件1){
   // 如果條件1為真,執(zhí)行這里的語句
   if(條件2){
      ////如果條件2為真,執(zhí)行這里的語句
   }
}

我們來看一個嵌套語句的實例:

實例演示
預覽 復制
復制成功!
public class IfElseStatement1 {
    public static void main(String[] args) {
      	// 初始化整型變量age,值為25
        int age = 25;
				int sex = 1;  // 此處用sex變量表示性別,1:男  2:女
        if(age >= 20) {
            System.out.println("在中國你已經成年");
          	if(sex == 2) {
              	System.out.println("并且到了法定的結婚年齡");
            }
          	if(sex == 1 && age >= 22) {
              	System.out.println("并且到了法定的結婚年齡");
            }
        } else {
            System.out.println("在中國你還未成年");
        }
    }
}
運行案例 點擊 "運行案例" 可查看在線運行效果

運行結果:

在中國你已經成年
并且到了法定的結婚年齡

4. switch 語句

4.1 語法

switch 條件語句可以理解為簡寫版的多個 if .. else 語句。switch 語句的語法如下:

switch () {
    case1:
       語句1.1
       ...
	   語句n.1
       break;
    case2:
        語句2.1
        ...
        語句2.n
        break;
    default:
        語句n.1
        ...
        語句n.n
}

switch case 語句有如下規(guī)則:

  • switch 語句中的變量類型可以是: byte、shortint、 char 或者 String
  • switch 語句可以擁有多個 case 語句。每個 case 后面跟一個要比較的值和冒號;
  • case 語句中的值的數(shù)據(jù)類型必須與變量的數(shù)據(jù)類型相同,而且只能是常量或者字面常量;
  • 當變量的值與 case 語句的值相等時,那么 case 語句之后的語句開始執(zhí)行,直到 break 語句出現(xiàn)才會跳出 switch 語句;
  • 當遇到 break 語句時,switch 語句終止。程序跳轉到 switch 語句后面的語句執(zhí)行。case 語句不一定要包含 break 語句。如果沒有 break 語句出現(xiàn),程序會繼續(xù)執(zhí)行下一條 case 語句,直到出現(xiàn) break 語句;
  • switch 語句可以包含一個 default 分支,該分支一般是 switch 語句的最后一個分支(可以在任何位置,但建議在最后一個)。default 在沒有 case 語句的值和變量值相等的時候執(zhí)行。default 分支不需要 break 語句。

4.2 實例

我們先來看下面的一個簡單實例:

實例演示
預覽 復制
復制成功!
public class SwitchStatement1 {
  	public static void main(String args[]) {
        int i = 2;
      	switch (i) {
          case 1:
              // i 的值不等于1,所以不執(zhí)行此處代碼
              System.out.println("i的值為1");
            	break;
          case 2:
              // i 的值等于2,所以執(zhí)行此處代碼
              System.out.println("i的值為2");
              break;
          default:
			  // case 2 分支已執(zhí)行并break,所以此處代碼不會執(zhí)行
              System.out.println("i的值既不等于1,也不等于2");
        }
    }
}
運行案例 點擊 "運行案例" 可查看在線運行效果

運行結果:

i的值為2

從 JDK5 開始,switch 語句可以與 枚舉值一起使用。 例如,下面是根據(jù)數(shù)字顯示對應星期幾的實例代碼:

public class SwitchStatement2 {
   public static void main(String args[]) {
      Day day = day.MONDAY; // 假設 Day 是一種枚舉類型,里面包含星期一到星期天。
      switch (day) {
         case MONDAY :
            System.out.println("星期一"); 
            break;
         case TUESDAY :
          	System.out.println("星期二"); 
            break;
         case WEDNESDAY :
            System.out.println("星期三");
            break;
         case THURSDAY :
            System.out.println("星期四");
            break;
         case FRIDAY :
            System.out.println("星期五");
            break;
         case SATURDAY :
            System.out.println("星期六");
            break;
         case SUNDAY :
            System.out.println("星期天");
      }
   }
}

從 JDK8 開始,switch 語句可以與 String 值一起使用:

實例演示
預覽 復制
復制成功!
public class SwitchStatement3 {
   public static void main(String args[]) {
      String day = "TUESDAY";
      switch (day) {
         case "Wednesday" :
            System.out.println("星期一"); 
            break;
         case "TUESDAY" :
          	System.out.println("星期二"); 
            break;
         case "WEDNESDAY" :
            System.out.println("星期三");
            break;
         case "THURSDAY" :
            System.out.println("星期四");
            break;
         case "FRIDAY" :
            System.out.println("星期五");
            break;
         case "SATURDAY" :
            System.out.println("星期六");
            break;
         case "SUNDAY" :
            System.out.println("星期天");
      }
   }
}
運行案例 點擊 "運行案例" 可查看在線運行效果
星期二

5. 小結

在 Java 中,條件語句主要有 if 語句和 switch 語句兩種。在實際的編碼中,條件語句非常常用,要根據(jù)合適的場景選擇使用,例如對于多個 == 判斷的情況下,使用 switch 語句就更加清晰。而對于復雜的條件表達式,選擇 if 語句就更適合。

對于 if 語句的使用,建議:

  1. 每個分支都要用 {} 括起來;
  2. 當有多個 if ... else 的時候,要注意判斷順序,把可能性越大的分支越排在越前面;
  3. if ... else 語句的嵌套層級不要太深。

對于 switch 語句的使用,建議:

  1. 每個分支都不要漏寫 break;
  2. 總是寫上 default 分支。