你胆敢不加break试试?
我們經常在實際開發中會用到一些轉換類,比如在金融界中,我們需要將1轉換為“壹”,2轉換成“貳”。還有類似這樣的需求,食堂在一周內每天的菜單都是不一樣的,周一為魚香肉絲+雞腿,周二為爆炒土豆絲+鲅魚,周三為西紅柿炒雞蛋+牛肉片等等,我們可以用代碼來模擬一下金融項目的需求:
//java實現將阿拉伯數字轉換成中國式數字public static void testCastNum(){int num = 2;String chinaNum = "";switch (num) {case 1:chinaNum = "壹";case 2:chinaNum = "貳";case 3:chinaNum = "叁";case 4:chinaNum = "肆";case 5:chinaNum = "伍";case 6:chinaNum = "陸";case 7:chinaNum = "柒";case 8:chinaNum = "捌";case 9:chinaNum = "玖";}System.out.println(chinaNum);}這是一個簡單的不能在簡單的案例,大家一看就明白,那我們運行一下,發現結果輸出的是“玖”,為什么?
我們回來在看看程序,哦,原來是case后面忘記加break了,程序從case2執行完之后繼續執行,chinaNum的值從“貳”、“叁”、“肆”一直到“玖”才結束,因為在switch中,自始至終都未發現break,所以就一直執行。
有人可能會質疑,這樣的小兒科我是不可能煩的,錯誤太簡單了,我只能說,你參與過的并沒有太復雜,在大點的項目中蹲過坑、打過仗的兄弟們都知道,switch中經常會遇到一堆case語句,又和別的業務嵌套在一起,你說落一個break正常不,最正常不過了。
那么我們應該如何防止這樣的看似低級小兒科的實則又常犯的錯誤呢?
修改編輯器的警告級別,比我在myeclipse或者eclipse中,一次點擊windows–》preferences–》java–》Compiler–》Errors/Warnings–》Potential programming problems–》?”’switch’ case fall-througn”,
將后面的錯誤級別修改為Error,你膽敢在case后面不加break試試?我就直接給你報紅色叉號,別說運行了,編譯都不讓你通過!!!
當然,你也可以改其他的錯誤級別,自己改的試試哦~
總結
以上是生活随笔為你收集整理的你胆敢不加break试试?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 玩现代战舰要什么配置?
- 下一篇: 你胆敢在case后面不加break试试?