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

全部開發(fā)者教程

Java 條件語句

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

1. if 語句

1.1 語法

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

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

大括號(hào)中包含的內(nèi)容就稱為語句塊。

1.2 實(shí)例

我們來看一個(gè) if 語句的實(shí)例:

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

運(yùn)行結(jié)果:

在中國你已經(jīng)成年

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

如果語句塊內(nèi)只有一條語句,我們也可以去掉花括號(hào) {}

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

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

2. if … else … 語句

2.1 語法

if 語句可以結(jié)合 else 來使用,當(dāng)布爾表達(dá)式計(jì)算結(jié)果為 false (假)時(shí),else 語句塊將會(huì)執(zhí)行。

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

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

2.2 實(shí)例

改寫上面 if 語句的代碼:

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

運(yùn)行結(jié)果:

在中國你還未成年

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

補(bǔ)充

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

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

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

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

3. if … else if … else 語句

3.1 語法

if 語句可以結(jié)合 else if 來實(shí)現(xiàn)更復(fù)雜的程序分支結(jié)構(gòu):

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

3.2 實(shí)例

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

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
// 根據(jù)給定分?jǐn)?shù)向屏幕打印評(píng)級(jí)
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("不及格");
        } 
    }
} 
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

運(yùn)行結(jié)果:

良好

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

3.3 嵌套 if … else 語句

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

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

我們來看一個(gè)嵌套語句的實(shí)例:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
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("在中國你已經(jīng)成年");
          	if(sex == 2) {
              	System.out.println("并且到了法定的結(jié)婚年齡");
            }
          	if(sex == 1 && age >= 22) {
              	System.out.println("并且到了法定的結(jié)婚年齡");
            }
        } else {
            System.out.println("在中國你還未成年");
        }
    }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

運(yùn)行結(jié)果:

在中國你已經(jīng)成年
并且到了法定的結(jié)婚年齡

4. switch 語句

4.1 語法

switch 條件語句可以理解為簡寫版的多個(gè) 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、short、intchar 或者 String;
  • switch 語句可以擁有多個(gè) case 語句。每個(gè) case 后面跟一個(gè)要比較的值和冒號(hào);
  • case 語句中的值的數(shù)據(jù)類型必須與變量的數(shù)據(jù)類型相同,而且只能是常量或者字面常量;
  • 當(dāng)變量的值與 case 語句的值相等時(shí),那么 case 語句之后的語句開始執(zhí)行,直到 break 語句出現(xiàn)才會(huì)跳出 switch 語句;
  • 當(dāng)遇到 break 語句時(shí),switch 語句終止。程序跳轉(zhuǎn)到 switch 語句后面的語句執(zhí)行。case 語句不一定要包含 break 語句。如果沒有 break 語句出現(xiàn),程序會(huì)繼續(xù)執(zhí)行下一條 case 語句,直到出現(xiàn) break 語句;
  • switch 語句可以包含一個(gè) default 分支,該分支一般是 switch 語句的最后一個(gè)分支(可以在任何位置,但建議在最后一個(gè))。default 在沒有 case 語句的值和變量值相等的時(shí)候執(zhí)行。default 分支不需要 break 語句。

4.2 實(shí)例

我們先來看下面的一個(gè)簡單實(shí)例:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
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,所以此處代碼不會(huì)執(zhí)行
              System.out.println("i的值既不等于1,也不等于2");
        }
    }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果

運(yùn)行結(jié)果:

i的值為2

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

public class SwitchStatement2 {
   public static void main(String args[]) {
      Day day = day.MONDAY; // 假設(shè) 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 值一起使用:

實(shí)例演示
預(yù)覽 復(fù)制
復(fù)制成功!
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("星期天");
      }
   }
}
運(yùn)行案例 點(diǎn)擊 "運(yùn)行案例" 可查看在線運(yùn)行效果
星期二

5. 小結(jié)

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

對(duì)于 if 語句的使用,建議:

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

對(duì)于 switch 語句的使用,建議:

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