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