case...break與switch...default ???
"3、 case 匹配后,執(zhí)行匹配塊里的程序代碼,如果沒有遇見?break?會繼續(xù)執(zhí)行下一個的 case 塊的內(nèi)容,直到遇到?break 語句或者 switch 語句塊結束?如"這里的意思是指case和break一起使用,而default是switch的結束語嗎?如果我是這樣理解的話,“5、?default 塊可以出現(xiàn)在任意位置,也可以省略”又有矛盾了?
"3、 case 匹配后,執(zhí)行匹配塊里的程序代碼,如果沒有遇見?break?會繼續(xù)執(zhí)行下一個的 case 塊的內(nèi)容,直到遇到?break 語句或者 switch 語句塊結束?如"這里的意思是指case和break一起使用,而default是switch的結束語嗎?如果我是這樣理解的話,“5、?default 塊可以出現(xiàn)在任意位置,也可以省略”又有矛盾了?
2015-03-26
舉報
2015-03-26
前面那半句不對.. 如果沒有default 而且沒有匹配到會報錯
2015-03-26
default 的意思是 如果沒有遇到?jīng)]有跟case匹配的 就執(zhí)行default語句 ?但是default語句并不是switch 的結束語 ?你也可以把所有情況列全 就不用default語句了。
break的意思你可能沒有太理解,它代表的是跳出循環(huán) 或者當前塊,如果 沒有break的話他就會繼續(xù)執(zhí)行下面的代碼 ?效果跟
?????????????case '一':
? ? ? ? ? ? case '三':
? ? ? ? ? ? case '五':
是一樣的
2015-03-26
case 匹配后,執(zhí)行匹配塊里的程序代碼,如果沒有遇見?break?會繼續(xù)執(zhí)行下一個的 case 塊的內(nèi)容。對,沒錯,就是case和break一起使用,如果沒有break,那么它還是繼續(xù)執(zhí)行下一個語句塊的內(nèi)容。default就是默認的意思,也就是說如果case沒有匹配到的話,就會執(zhí)行default里面的內(nèi)容。
就拿課程里面這個做栗子吧
public class HelloWorld {
? ? public static void main(String[] args) {
? ? ?char today='一';
? ? ? ? switch(today){
? ? ? ? ? ? case '一':
? ? ? ? ? ? case '三':
? ? ? ? ? ? case '五':
? ? ? ? ? ? ? ? System.out.println("吃包子");?
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? case '二':
? ? ? ? ? ? case '四':
? ? ? ? ? ? case '六':
? ? ? ? ? ? ? ? System.out.println("吃油條");?
? ? ? ? ? ? ? ?break;
? ? ? ? ? ?default:
? ? ? ? ? ? System.out.println("吃主席套餐");
? ? ? ? }
如果把這代碼塊里面的break都給刪了,那么控制臺就會依次輸出:
吃包子
吃油條
吃主席套餐
default我們也可以省略掉,是不是可以用一個case '日':來替換掉啊,效果是一樣的。