break和continue
1、break
break的使用场景:循环语句和switch-case分支语句。
它的作用是在循环语句中跳出当前循环。在分支语句中是结束当前的分支语句。
举个例子:
break在循环语句中
public class BreakContinueTest { public static void main(String[] args) { for(int i = 1; i <= 5; i++) { if(i == 2) { break; } //break后结束当前循环,跳到这里,运行结果为1 System.out.print(i + " "); } } }
break在分支语句中:
public class BreakContinueTest2 { public static void main(String[] args) { for(int i = 1; i <= 5; i++) { switch(i) { case 1: break; } //运行结果是1 2 3 4 5 //这的break在分支语句中,只是结束分支语句,不会影响最外面的循环哦 System.out.print(i + " "); } } }
break在嵌套循环中
public class BreakContinueTest3 { public static void main(String[] args) { for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { if(j == 2) { break; } System.out.print("j=" + j + " "); } System.out.println("i=" + i); // 这的break是在内循环中,注意哦,break是跳出它所在的那层循环 // 不会影响外层循环哦 //这的运行结果是 // j=1 i=1 // j=1 i=2 // j=1 i=3 } } }
那么内循环中的break怎么结束外层循环呢?也很简单,给外层循环加一个标识,看代码:
public class BreakContinueTest4 { public static void main(String[] args) { flag: for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { if(j == 2) { break flag; } System.out.print("j=" + j + " "); } System.out.println("i=" + i); } System.out.println("程序结束"); //运行结果 // j=1 程序结束 // 这样就可以跳出外层循环了 } }
2、continue
continue的使用范围:循环语句。
它的作用是跳出本次循环。
它与break的区别是,break跳出当前循环,当前的整个循环都不执行了,而continue是结束本次循环,并进入下次循环。
举个例子:
public class BreakContinueTest5 { public static void main(String[] args) { for(int i = 1; i <= 5; i++) { if(i == 2) { continue; // 结束i=2时的循环,不会影响后面的循环 } System.out.print(i + " "); // 运行结果:1 3 4 5 } } }
【注意】break和continue后面都不能直接跟语句了,否则编译会出错
欢迎大家关注我的公众号