文章詳情頁
阿里巴巴Java開發手冊關于switch的問題
瀏覽:97日期:2023-11-04 11:40:39
問題描述
在一個 switch 塊內,每個 case 要么通過 break/return 等來終止,要么注釋說明程序將繼續執行到哪一個 case 為止; 在一個 switch 塊內,都必須包含一個 default 語句并且放在最后,即使它什么代碼也沒有。這是為什么?
問題解答
回答1:switch case中default是很有必要的,哪怕僅僅是個控制臺輸出。比如你有3個case,’1’,’2’,’3’.但是你在某些情況下不小心傳入了4,這時候如果沒有default,程序就崩潰了,有時候可以把default看成是異常處理的一種。當然,default也是懶人處理問題的不錯選擇。還是之前的123,只有1的時候輸出’hello world’,其他都輸出’nice to meet you’.如果不用default你可能要寫好幾個case來對應,default的話就一個case就夠了。除了1,其他都走default。return/break的問題,還是上文的3個case, 1,2,3。如果1的邏輯執行完沒有return/break來結束,那2的邏輯也會跟著執行,直到遇到return/break為止。當然這種情況是合法的。但是有些時候我們只想執行case 1中的邏輯,那就必須在1的邏輯后加return/break,否則多執行的2的邏輯,就會導致其他地方的邏輯錯誤。
大概就是這個意思,沒什么太多的內容。
標簽:
java
相關文章:
1. 視頻文件不能播放,怎么辦?2. mysql - 把一個表中的數據count更新到另一個表里?3. 請教使用PDO連接MSSQL數據庫插入是亂碼問題?4. mysql 查詢身份證號字段值有效的數據5. visual-studio - Python OpenCV: 奇怪的自動補全問題6. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處7. node.js - nodejs開發中常用的連接mysql的庫8. linux - Ubuntu下編譯Vim8(+python)無數次編譯失敗9. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題10. Python爬蟲如何爬取span和span中間的內容并分別存入字典里?
排行榜
