Java語言
swtich()變量類型只能是int、short、char、byte和enum類型。當進行case判斷時,JVM會自動從上到小掃描,尋找匹配的case,可能存在多種況:若未找到,則執行默認的case。
當每一個case都不存在break時,JVM並不會順序輸出每一個case對應的返回值,而是繼續匹配,匹配不成功則返回默認case。
當每一個case都不存在break時,匹配成功後,從當前case開始,依次返回後續所有case的返回值。
若當前匹配成功的case不存在break,則從當前case開始,依次返回後續case的返回值,直到遇到break,跳出判斷。
C語言
如圖爲switch case 語句的通用形式。
c語言中每一個case 的最後加上一個break語句,就是爲了防止它進入下一個case,把下一個case中的語句輸出來。如例圖。
結束一個switch case 語句是有兩中結束方式的,第一種是遇到switch case 這個語句的括號。
第二種是遇到break。
把default 這個語句,放在case 的中間,就是兩個case 語句的中間,之後你在執行這個語句,可以看到語句是如圖執行。
case 中的語句,用代碼驗證。這樣的代碼在編譯的時刻就會出現錯誤 ,原因是標號只能是語句的一部分,而並非語法。