java流程控制 break,continue,return,以及结合标签的使用
1,break用于强制退出循环,不执行循环中剩余的语句,循环体之后的语句继续执行。
public void testBreak() {
for (int i = 0; i < 5; i++) {
if(i == 3) {
break;
}
System.out.println("测试break,i="+i);
}
System.out.println("测试break,for循环结束。");
}
//=================
测试break,i=0
测试break,i=1
测试break,i=2
测试break,for循环结束。
2,continue停止执行当前的迭代,然后退回循环起始处,开始下一次迭代。
public void testContinue() {
for (int i = 0; i < 5; i++) {
if(i == 3) {
continue;
}
System.out.println("测试continue,i="+i);
}
System.out.println("测试continue,for循环结束。");
}
//=========================
测试continue,i=0
测试continue,i=1
测试continue,i=2
测试continue,i=4
测试continue,for循环结束。
3,return 关键词有两个方面的用途:其一可以指定方法返回值,其二可以使方法退出,并返回值,如果是返回void的方法,使用return相当于结束方法。在循环体中也可以使用return关键词。如果在返回void的方法中没有return语句,那么在方法结尾处会有一个隐式的return。
public void testReturn() {
for (int i = 0; i < 5; i++) {
if(i == 3) {
return;
}
System.out.println("测试return,i="+i);
}
System.out.println("测试return,for循环结束。");
}
//=======================
测试return,i=0
测试return,i=1
测试return,i=2
4,使用标签中断多重循环。break和continue。
(break和continue只能中断当前循环,所以结合标签中断多重循环)
使用break结合标签:
public void testBreakFor() {
lable:
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
if(j == 3) {
break lable;
}
System.out.println("测试break和标签的使用,i="+i+",j="+j);
}
}
System.out.println("测试break和标签的使用,for循环结束。");
}
//=========================
测试break和标签的使用,i=0,j=0
测试break和标签的使用,i=0,j=1
测试break和标签的使用,i=0,j=2
测试break和标签的使用,for循环结束。
continue结合标签:和单独是break结果一样
public void testContinueFor() {
lable:
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
if(j == 3) {
continue lable;
}
System.out.println("测试continue和标签的使用,i="+i+",j="+j);
}
}
System.out.println("测试continue和标签的使用,for循环结束。");
}
//=============================
测试continue和标签的使用,i=0,j=0
测试continue和标签的使用,i=0,j=1
测试continue和标签的使用,i=0,j=2
测试continue和标签的使用,i=1,j=0
测试continue和标签的使用,i=1,j=1
测试continue和标签的使用,i=1,j=2
测试continue和标签的使用,i=2,j=0
测试continue和标签的使用,i=2,j=1
测试continue和标签的使用,i=2,j=2
测试continue和标签的使用,for循环结束。
在多重循环中使用break只结束当前循环
public void testBreakForIJ() {
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
if(j == 3) {
break;
}
System.out.println("测试break多重循环的使用,i="+i+",j="+j);
}
}
System.out.println("测试break多重循环的使用,for循环结束。");
}
//=========================
测试break多重循环的使用,i=0,j=0
测试break多重循环的使用,i=0,j=1
测试break多重循环的使用,i=0,j=2
测试break多重循环的使用,i=1,j=0
测试break多重循环的使用,i=1,j=1
测试break多重循环的使用,i=1,j=2
测试break多重循环的使用,i=2,j=0
测试break多重循环的使用,i=2,j=1
测试break多重循环的使用,i=2,j=2
测试break多重循环的使用,for循环结束。