在進(jìn)行程序控制時,使用switch的數(shù)據(jù)類型有所限制,其中case后面的條件也有一定的要求。結(jié)合枚舉的方法后,switch的使用范圍得到了擴(kuò)大,在操作上也趨向于簡潔化。下面我們就switch語法進(jìn)行簡單回顧,然后就在java枚舉實(shí)例的使用展開分析,體驗(yàn)其用法的變化。
1.switch語法
case 值:case翻譯過來就是情況、實(shí)例的意思,那么這句可以理解為當(dāng)switch(表達(dá)式)的結(jié)果為case中的值時,則執(zhí)行該case下的語句。
2.switch在枚舉的實(shí)例
Java1.5新增enum關(guān)鍵字的同時,也擴(kuò)大了switch的語句使用范圍。Java1.5之前,switch中的值只能是簡單數(shù)據(jù)類型,比如int、byte、short、char, 有了枚舉類型之后,就可以使用枚舉類的對象了。
同時在switch表達(dá)式中使用enum定義的枚舉類的對象作為表達(dá)式時, case子句可以直接使用枚舉對象的名字, 無需添加枚舉類作為限定。這樣一來,程序的控制選擇就變得更加的方便,看下面的例子:
運(yùn)行結(jié)果:
對于這些枚舉的日期,JVM都會在運(yùn)行期構(gòu)造成出一個簡單的對象實(shí)例一一對應(yīng)。這些對象都有唯一的identity,類似整型數(shù)值一樣,switch語句就會根據(jù)此來identity進(jìn)行執(zhí)行跳轉(zhuǎn)。
以上就是switch在java枚舉中的用法,可以說結(jié)合枚舉之后,switch的用法有了新的變化,對于代碼模塊的運(yùn)行變得更加簡單。更多關(guān)于“Java培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓(xùn)經(jīng)驗(yàn),課程大綱更科學(xué)更專業(yè),有針對零基礎(chǔ)的就業(yè)班,有針對想提升技術(shù)的好程序員班,高品質(zhì)課程助力你實(shí)現(xiàn)java程序員夢想。