Java基礎練習題——switch結構

系列連載文章,大家可以從我的專欄學習Java入門基礎知識,後續也會有更高級的Java特性、企業級開發框架,也有平常工作中的技術總結和分享,歡迎關注我的CDSN博客。同時可關注微信公衆號“Java開發之旅”,獲得更多技術資料! 

目錄

閒言碎語

題目

小結


閒言碎語

switch的練習題,其實就是等值判斷時的if結構,你會了if結構,就會了switch結構,而且switch和switch、switch和if都是可以互相嵌套的。這裏我就只出一道題,用switch和if嵌套着做,大家下去也可以全部用switch去做~

 

題目

某航空公司推出線上售票業務,用戶先選擇出行的月份,再選擇乘坐經濟艙還是頭等艙。售票規則如下:經濟艙,5月份打9折,10月份打85折,其餘月份不打折;頭等艙,5月份打8折,10月份打75折,其餘月份不打折。假設頭等艙的價格爲5000元,經濟艙的價格爲4000元,請根據用戶輸入的月份和艙類型計算最終價格。

import java.util.Scanner;
​
public class Test {
​
    public static void main(String[] args) {
        //聲明一個Scanner類的對象
        Scanner scanner = new Scanner(System.in);
​
        System.out.print("請輸入您要出現的月份(數字):");
        int month = scanner.nextInt();
        System.out.print("請輸入您要乘坐的艙型(經濟艙或頭等艙)");
        String type = scanner.next();
​
        //折扣,默認不打折
        double discount = 1.0;
        //機票價格,默認0.0元
        double price = 0.0;
​
        //用if結構確定基本票價
        if (type.equals("經濟艙")) {
            price = 4000;
        }else {
            price = 5000;
        }
​
        //用switch結構計算折扣,只需要兩個分支判斷5月份和10月份,其餘的月份不打折,用default表示
        switch (month) {
            case 5:
                //如果是5月份出行,判斷經濟艙和頭等艙
                if (type.equals("經濟艙")) {
                    //經濟艙,5月份打9折
                    discount = 0.9;
                    System.out.println("5月份出行,經濟艙打9折~");
                }else {
                    //頭等艙,5月份打8折
                    discount = 0.8;
                    System.out.println("5月份出行,頭等艙打8折~");
                }
                break;
            case 10:
                //如果是10月份出行,判斷經濟艙和頭等艙
                if (type.equals("經濟艙")) {
                    //經濟艙,10月份打85折
                    discount = 0.85;
                    System.out.println("10月份出行,經濟艙打85折~");
                }else {
                    //頭等艙,10月份打75折
                    discount = 0.75;
                    System.out.println("10月份出行,頭等艙打75折~");
                }
                break;
            default:
                System.out.println("5月份和10月份之外出行,不打折");
        }
​
        //最終票價就是價格乘以折扣
        System.out.println("您最終需要支付的票價爲:" + (price * discount));
    }
}

小結

大家有疑問及時給我留言或者私信,也歡迎大家關注一下我的微信公衆號~~~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章