Java 在循环的try catch中使用continue、break
循环的try catch中使用continue、break。
结论:1. 循环内catch代码端中的的continue、break可以正常生效。
2. 无论是continue还是break,退出循环前都会执行finally中的代码
文章目录
- 代码:
- 情形1(无continue、break)结果:
- 情形2(continue)结果:
- 情形3(break)结果:
- finally 代码段中的执行情况
代码:
public static void main(String[] args) {for (int i = 0; i < 3; i++) {System.out.println("-----start" + i);try {test(i);} catch (Exception e) {System.out.println(e.getMessage());// 情形1:无continue、break// 情形2:continuecontinue;// 情形3:breakbreak;}/* 情形4: finallyfinally {System.out.println("finally");} */System.out.println("-----end" + i);}}static void test(int j) {if (j == 1) {throw new RuntimeException("发生异常");}System.out.println("正常执行" + j);}
情形1(无continue、break)结果:
三次循环均能全部执行到结尾。
情形2(continue)结果:
发生异常的那次循环在执行continue就跳出了本次循环。
情形3(break)结果:
发生异常的那次循环在执行break之后就中断了整个for循环。
finally 代码段中的执行情况
无论是continue、还是break。在退出本次循环之前,都执行了finally代码段中的代码