Java 菜鳥教程

Java 流程控制

Java 數(shù)組

Java 面向?qū)ο?I)

Java 面向?qū)ο?II)

Java 面向?qū)ο?III)

Java 異常處理

Java 列表(List)

Java Queue(隊列)

Java Map集合

Java Set集合

Java 輸入輸出(I/O)

Java Reader/Writer

Java 其他主題

Java switch語句

在本教程中,您將學(xué)習(xí)如何使用Java中的switch語句來控制程序執(zhí)行的流程

在Java中,我們使用了if..else..if階梯在多個塊之間執(zhí)行一個代碼塊。但是,if ... else ... if梯子的語法太長。

因此,我們可以使用switch語句代替long if ... else ... if梯子。switch語句的使用使我們的代碼更具可讀性。

switch語句的語法為:

switch (variable/expression) {
case value1:
   //  case1 語句
   break;

case value2:
   // case2 語句
   break;

   .. .. ...
   .. .. ...

default:
   // default 語句
}

switch語句評估expression或variable(表達式或變量),并將其與每個case標簽的值(可以是表達式)進行比較。

現(xiàn)在,如果值與某個case標簽匹配,那么將執(zhí)行匹配case標簽的所有語句。

例如,如果 variable/expression 等于value2。在這種情況下,case將執(zhí)行該匹配的所有語句(case2的語句)。

注意,在每種情況下都使用break語句。break語句用于終止該語句的執(zhí)行switch。

這很重要,因為如果不使用break語句,則case之后的所有語句將按順序執(zhí)行,直到switch語句結(jié)束。

switch語句流程圖

Java switch語句的流程圖
Java switch語句的流程圖

示例1:Java switch語句

class Main {
    public static void main(String[] args) {

        int week = 4;
        String day;

        // switch語句判斷星期幾
        switch (week) {
            case 1:
                day = "Sunday";
                break;
            case 2:
                day = "Monday";
                break;
            case 3:
                day = "Tuesday";
                break;

            //匹配星期的值
            case 4:
                day = "Wednesday";
                break;
            case 5:
                day = "Thursday";
                break;
            case 6:
                day = "Friday";
                break;
            case 7:
                day = "Saturday";
                break;
            default:
                day = "Invalid day";
                break;
        }
        System.out.println("這一天是 " + day);
    }
}

輸出

這一天是 Wednesday

在上面的示例中,我們使用switch語句找出一周中的某天。在這里,我們有一個保存整數(shù)值的變量week。將該值與switch塊case內(nèi)的每個值進行比較。

這里week的值是4。因此,它與case 4匹配。所以case 4里面的語句被執(zhí)行了。

示例2:使用switch語句制作計算器

下面的程序從用戶那里接受三個輸入:一個運算符2個數(shù)字。根據(jù)用戶提供的運算符,對這些數(shù)字進行計算。然后結(jié)果顯示在屏幕上。

在瀏覽該程序之前,您最好已經(jīng)了解Java scanner以接受用戶的輸入。

import java.util.Scanner;

class Main {
    public static void main(String[] args) {

        char operator;
        Double number1, number2, result;

        //創(chuàng)建一個Scanner類的對象
        Scanner scanner = new Scanner(System.in);
        System.out.print("輸入運算符 (選項: +, -, * 或 /): ");

        //要求用戶輸入運算符
        operator = scanner.next().charAt(0);
        System.out.print("分別輸入數(shù)字1和數(shù)字2: ");

        //要求用戶輸入數(shù)字
        number1 = scanner.nextDouble();
        number2 = scanner.nextDouble();

        switch (operator) {

            //兩個數(shù)字相加
            case '+':
                result = number1 + number2;
                System.out.print(number1 + "+" + number2 + " = " + result);
                break;

            //兩個數(shù)字相減
            case '-':
                result = number1 - number2;
                System.out.print(number1 + "-" + number2 + " = " + result);
                break;

            //兩個數(shù)字相乘
            case '*':
                result = number1 * number2;
                System.out.print(number1 + "*" + number2 + " = " + result);
                break;

            //兩個數(shù)字相除
            case '/':
                result = number1 / number2;
                System.out.print(number1 + "/" + number2 + " = " + result);
                break;

            default:
                System.out.println("Invalid operator!");
                break;
        }
    }
}

輸出

輸入運算符 (選項: +, -, * 或 /):  *
分別輸入數(shù)字1和數(shù)字2: 1.4
-5.3
1.4*-5.3 = -7.419999999999999

在上面的示例中,我們使用switch語句創(chuàng)建了一個計算器。它根據(jù)用戶提供的運算符執(zhí)行計算。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清