java流程break与continue的详解(简单易懂)
java中break与continue的详解(简单易懂)
break与continue的作用
1.break:
break语句可以用来从循环体内中途跳出循环体,即提前结束循环操作,接着执行循环下面的语句。 在任何循环中的主体,均可用break控制循环的流程!
代码示例:
public class BreakDemo01 {
//判断输入的月份是什么季节,(3,4,5春季,6,7,8夏季,9,10,11秋季,12,1,2冬季)
public static void main(String[] args) {
//从键盘输入数字
Scanner sc=new Scanner(System.in);
System.out.println("请输入1-12以内的月份");
int month=sc.nextInt();
switch (month){
case 3:
case 4:
case 5:
System.out.println("您现在的季节是春季");
break;
case 6:
case 7:
case 8:
System.out.println("您现在的季节是夏季");
break;
case 9:
case 10:
case 11:
System.out.println("您现在的季节是秋季");
break;
case 12:
case 1:
case 2:
System.out.println("您现在的季节是冬季");
break;
default:
System.out.println("输入的月份不对!");
}
sc.close();
}
}
当然,在学过诸多循环之后,我们也可以使用if循环去做,都是可以做出来的
可以看出,当输出的值满足某一case后面的值之后,结束循环!
2.continue:
continue语句是跳过循环体中剩余的语句而强制执行下一次循环操作。其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定
代码示例:(没加continue的时候)
public class ContinueDemo01 {
public static void main(String[] args) {
int num=0;
int count=0;
for (int i=1;i<=5;i++){
if (i<=4){
num+=i;
//continue;
}
count++;
}
System.out.println("前"+4+"个数的和为:"+num);
System.out.println("for循环执行完成的次数:"+count);
}
}
输出:
前4个数的和为:10
for循环执行完成的次数:5
代码示例:(加上continue之后)
public class ContinueDemo01 {
public static void main(String[] args) {
int num=0;
int count=0;
for (int i=1;i<=5;i++){
if (i<=4){
num+=i;
continue;
}
count++;
}
System.out.println("前"+4+"个数的和为:"+num);
System.out.println("for循环执行完成的次数:"+count);
}
}
输出结果:
前4个数的和为:10
for循环执行完成的次数:1
通过上面的案例可以看出,当有continue之后直接跳出了循环!不执行下一步操作,而开始下一次循环!
关于goto关键字
goto关键字在程序设计语言中出现,在break和continue这两个关键字的身上,我们任然可以看到一些goto的影子---带标签的break和continue;
标签:后面跟一个冒号的标识符,如:label:
对java来说,使用到标签的地方是在循环语句之前,而在循环中设置标签的理由是,我们希望在其中嵌套另一个循环,由于break和continue通常只中断当前循环,但若伴随标签使用,他们就会中断到存放标签的地方;
代码示例:
public class LableDemo {
public static void main(String[] args) {
//求1-100之间的质数
int count=0;
outer: for (int i=1;i<=100;i++){
for (int j=2;j<i/2;j++){
if(i%j==0){
continue outer;
}
}
System.out.print(i+" ");
}
}
}
输出结果:
1 2 3 4 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
本文来自博客园,作者:星余明,转载请注明原文链接:https://www.cnblogs.com/lingstar/p/16449688.html