面對這樣的if陳述句,你是不是很難受呢?
if (flag == 1) {
log.info("didispace.com: 1");
} else if (flag == 2) {
log.info("didispace.com: 2");
} else if (flag == 3) {
log.info("didispace.com: 3");
} else if (flag == 4) {
log.info("didispace.com: 4");
} else {
log.info("didispace.com: x");
}
是不是想到用switch來改進一下?
switch(flag) {
case 1:
log.info("didispace.com: 1");
break;
case 2:
log.info("didispace.com: 2");
break;
case 3:
log.info("didispace.com: 3");
break;
case 4:
log.info("didispace.com: 4");
break;
default:
log.info("didispace.com: x");
}
舒服了嗎?是不是感徑訓是不那么舒服呢?
試試Java 14中對Switch運算式的增強功能,繼續改造:
switch(flag) {
case 1 -> log.info("didispace.com: 1");
case 2 -> log.info("didispace.com: 2");
case 3 -> log.info("didispace.com: 3");
case 4 -> log.info("didispace.com: 4");
default -> log.info("didispace.com: x");
}
這下是不是舒服了?在Java 14的switch運算式增強中,引入了對Lambda語法的支持,讓每個case分支變得更為簡潔,同時,容易遺忘的break也可以省略了,
Tips:這里的JEP 361特性,經歷了JDK 12、JDK 13兩個預覽版本之后才在JDK 14中定稿,所以部分功能在JDK 12和JDK 13中也會看到,但真正使用,還是建議在JDK 14之后的版本中應用,
好了,今天的分享就到這里!如果您學習程序中如遇困難?可以加入我們超高質量的技術交流群,參與交流與討論,更好的學習與進步!另外,不要走開,關注我!持續更新Java新特性專欄!
歡迎關注我的公眾號:程式猿DD,第一時間了解前沿行業訊息、分享深度技術干貨、獲取優質學習資源
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/471753.html
標籤:Java
