Java :break,continue,return的基础区别
break,continue,return是程序中经常出现的语句,其功能也有点相似之处,有时候辨析时易混淆,下为三者的区别分析。
大致思路:明确用在什么语句或结构中,其具体作用以及其他两者没有的特殊作用。
break:主要是用于switch语句和循环语句中。
break语句主要是在switch语句和循环结构出现。break用于结束其所在当前switch语句块程序的运行,但不会影响其所在语句块外部代码的执行。在循环结构中使用break语句,如果执行了break语句,那么就退出循环,接着执行循环结构下面的第一条语句。
如果在多重嵌套循环中使用break语句,当执行break语句的时候,退出的是它所在的循环结构,对外层循环没有任何影响。如果循环结构里有switch语句,并且在switch语句中使用了break语句,当执行switch语句中的break语句时,仅退出switch语句,不会退出外面的循环结构。
举例:
public class BreakTest {
public static void main(String[] args) {
int i = 1;
int k = 1;
switch (i) {
case 1:
System.out.println("代码1");
switch (k) {
case 1:
System.out.println("代码extra");
break;
}
//break;
case 2:
System.out.println("代码2");
break;
default:
System.out.println("代码3");
}
System.out.println("代码4");
}
}
break只结束其所在当前switch语句块程序的运行,运行结果为:
代码1
代码extra
代码2
代码4
去掉//的结果为:
代码1
代码
代码4
注:break可以用在if语句中,但是if语句必须在循环或switch分支语句中
public class Test {
public static void main(String[] args) {
if(1==1){
break;
}
}
}
continue:只能用于循环语句中。
continue语句只能用于循环语句,碰到continue语句就表示不执行后面的语句,直接转到下一次循环的开始,也有个形象的短语为:“半途而废,从头再来”。
常见的循环语句结构为:1.for 2.while 3.do while
如果在switch等语句中出现continue,如果语法正确,只能说明switch里面嵌套了for等循环结构,否则编译器会报错。
public class LoopTest {
public static void main(String[] args) {
for (int i = 0; i < 3; i++) {
if (i == 1) {
continue;
}
System.out.println("in code"+i);
}
System.out.println("out code");
}
}
运行结果:continue用于结束当前循环进入下次循环。
in code0
in code2
out code
return:用于有方法函数的地方(比如main方法)
return用于结束其所在方法的运行。return不能用于无方法的代码块中(如:static{System.out.println("代码"); return; }//错误)
public class SwitchTest {
public static void main(String[] args) {
int i=1;
switch(i){
case 1 :
System.out.println("代码1");
return;
case 2 :
System.out.println("代码2");
return;
default :
System.out.println("代码3");
}
//System.out.println("代码4");//去掉前面注释,该行代码会执行,不会显示“代码4”
}
}
程序运行结果:代码1
public class LoopTest {
static void loop(){
for (int i = 0; i < 3; i++) {
if (i == 1) {
return;
}
System.out.println("in code");
}
}
public static void main(String[] args) {
loop();
System.out.println("out code");
}
}
程序运行结果:
in code
out code