流程結構註意點
阿新 • • 發佈:2017-11-23
har 夏天 循環 style tro 機會 開始 col 字符
if(boolean)
switch(byte short int char enum 字符串)
1 switch(str) {//打印出3 2 case "春天" : System.out.println(1);break; 3 case "夏天" : System.out.println(2);break; 4 case "秋天" : System.out.println(3);break; 5 case "冬天" : System.out.println(4);break; 6 default : break; 7 }
break : 結束當前循環 或 當前以及上層循環
1 System.out.println("循環測試開始\n\n"); 2 3 outer: 4 for(int i = 0;i < 6; ++i) { 5 for(int j = 0;j < 4; ++j) { 6 System.out.println("i = " + i + "j = " + j); 7if(j == 2) 8 break outer; 9 } 10 } 11 打印結果: 12 循環測試開始 13 14 15 i = 0j = 0 16 i = 0j = 1 17 i = 0j = 2
continue忽略本次循環剩下的語句 或 當前以及上層循環剩下的語句
1 System.out.println("循環測試開始\n\n"); 2 3 outer: 4 for(int i = 0;i < 5; ++i) {5 for(int j = 0;j < 3; ++j) { 6 if(j == 1) 7 continue outer; 8 System.out.println("i = " + i + " j = " + j); 9 } 10 }
打印結果:
循環測試開始 i = 0 j = 0 i = 1 j = 0 i = 2 j = 0 i = 3 j = 0 i = 4 j = 0
區分for和while的continue
1 System.out.println("測試for開始\n\n"); 2 3 for(int i = 0;i < 4; ++i) { 4 if(i == 2) 5 continue; 6 System.out.println("i = " + i); 7 } 8 System.out.println("測試while開始\n\n"); 9 int k = 0; 10 while(k < 4) { 11 if(k == 2) 12 continue; 13 System.out.println("k = " + k); 14 ++k;//continue後,++k永遠沒機會執行了,循環一直執行,沒死!只是無法打印k了,就像阻塞了 15 }
for的循環增量會執行,但是while的循環增量不會執行!!!
打印結果:
測試for開始 i = 0 i = 1 i = 3 測試while開始 k = 0 k = 1 //程序卡死中...
流程結構註意點