亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

從零開始學大數據-Java基礎-switch語句(6)

發布時間:2020-07-03 00:03:42 來源:網絡 閱讀:810 作者:升sheng 欄目:大數據


我們從零開始學習大數據技術,從java基礎,到Linux技術涉獵,再深入到大數據技術的Hadoop、Spark、Storm技術,最后到大數據企業平臺的搭建,層層遞進,由點到面!希望技術大牛能過來指導學習。


上一節學習了流程控制語句,本節學習switch語句。

開始之前,我們先看一下上節的練習題。


一、練習題

if語句格式的練習:

1、獲取兩個數據中較大的值

2、判斷一個數據是奇數還是偶數,并輸出

從零開始學大數據-Java基礎-switch語句(6)

程序執行結果如下:

從零開始學大數據-Java基礎-switch語句(6)



二、switch語句


流程控制語句的選擇結構

1
選擇結構(也被稱為分支結構)

選擇結構有兩種語句,分別為如下:

  • if 語句

  • switch語句

前面已經對if語句做了探討,本節往下一起了解下switch語句


switch語句


switch語句格式:

switch(表達式){

case 值1:

語句體1;

break;

case 值2:

語句體2;

break;

...

default;

語句體n+1;

break;

}

格式的解釋:

  • switch:表示這是switch選擇結構

  • 表達式:這個地方的取值有限定的

byte,short,int,char

JDK5以后可以是枚舉

JDK7以后可以是字符串

  • case:后面跟的是要和表達式進行比較的值

  • 語句體:要執行的代碼

  • break:表示中斷和結束的意思,可以控制switch語句的結束

  • default:當所有的值和表達式不匹配的時候,就執行default控制的語句,其實就相當于if語句的else


執行流程:

  1. 首先計算出表達式的值和case依次比較

  2. 一旦有對應的值,就執行相應的語句體

  3. 在執行的過程中,遇到break就會結束

  4. 最后,如果所有的case都和表達式的值不匹配,就會執行default中的語句體,程序結束





從零開始學大數據-Java基礎-switch語句(6)

思考:

  1. byte可以作為switch的表達式嗎?

  2. long可以作為switch的表達式嗎?

  3. String可以作為switch的表達式嗎?

實例:

鍵盤錄入一個數據,根據這個數據,我們輸出對應的星期

  • 鍵盤錄入1,對應輸出星期一

  • 鍵盤錄入2,對應輸出星期二

  • ...

  • 鍵盤錄入7,對應輸出星期日


實例分析:

1、鍵盤錄入,用switch實現

2、判斷我們可以使用if語句,也可以使用switch語句

從零開始學大數據-Java基礎-switch語句(6)程序代碼:

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

從零開始學大數據-Java基礎-switch語句(6)


程序執行結果:

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)


從零開始學大數據-Java基礎-switch語句(6)


switch語句的注意事項:


1、
case 后面只能是常量,不能是變量,而且,多個case后面的值不能出現相同的


2、
default可以省略嗎?
  • 可以省略,但是不建議,因為它的作用是對不正確的情況給出的提示。

  • 特殊情況:case就可以把值固定的(單選項),可以考慮把default給省略

3、
break可以省略嗎?
  • 可以省略,不會報錯,但是最終執行結果不是我們想要的,會出現case穿透現象。

  • 不建議省略。


4、

default一定要在最后嗎?
  • 不是,可以在任意位置,但是建議在最后,否則匯產生case穿透。


5、

switch語句的結束條件


  • 遇到break就結束


switch注意事項-實例


下面我們針對相關實例看下注意實現的效果。

1、舉例(同名case ID & 變量ID)

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

程序執行結果:

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

  • 可見,case后面跟的必須是常量,不可以是變量,并且case后面的值不能相同。


從零開始學大數據-Java基礎-switch語句(6)


2、舉例(省略default語句)

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

從零開始學大數據-Java基礎-switch語句(6)程序執行結果:

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

  • 可見,在swith語句中,default是可以省略的,但是最終會導致一些不正確的情況不被排除在外,可以正常輸入。雖然省略default不會有報錯,但不建議省略掉。


從零開始學大數據-Java基礎-switch語句(6)


3、舉例(省略break)

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

從零開始學大數據-Java基礎-switch語句(6)程序執行結果:

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

  • 可見,在程序執行的時候,如果沒有break進行程序中斷,那么程序會依次按照順序往下執行,直到遇到break才中止。雖然省略break不會有報錯,但不建議省略掉,否則程序打印的結果會有誤。


從零開始學大數據-Java基礎-switch語句(6)


4、舉例(default語句不放最后)

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

程序執行結果:

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

  • 可見,如果default不放在最后,程序本身不會報錯,但是最終執行的時候,會出現case穿透。


5、舉例:(switch語句結束條件)

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

程序執行結果:

從零開始學大數據-Java基礎-switch語句(6)從零開始學大數據-Java基礎-switch語句(6)

  • 可見,在語句x,y中的,遇到了break就直接結束語句輸出;

  • 在語句a,b中,沒有遇到break,則程序執行到最后才做輸出。


擴展練習題(自行完成):

1、隨便出一個選擇題,通過鍵盤錄入,根據我們的選擇來給出你的選擇結果。

2、根據鍵盤錄入的字符串,判斷是否有滿足要求的,如果有就輸出否則,提示有誤。


本節我們就先告一段落,下一節我們將學習循環結構語句


往期文章:


從零開始學大數據-Java基礎開篇(1)

從零開始學大數據-Java基礎語法(2)

從零開始學大數據-Java運算符(3)

從零開始學大數據-Java基礎-三元運算符/鍵盤錄入(4)

從零開始學大數據-Java基礎-流程控制語句(5)



從零開始學大數據-Java基礎-switch語句(6)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陈巴尔虎旗| 建阳市| 巴东县| 日土县| 沙河市| 秦皇岛市| 太白县| 九寨沟县| 湟中县| 会东县| 屯留县| 武陟县| 凤凰县| 怀仁县| 佳木斯市| 巴马| 大城县| 淅川县| 武陟县| 成武县| 屏东县| 龙胜| 比如县| 兰坪| 布拖县| 东方市| 开江县| 潮州市| 盐城市| 壶关县| 肃南| 巴彦淖尔市| 阿拉善右旗| 康保县| 杂多县| 太康县| 隆化县| 郯城县| 满城县| 连江县| 琼海市|