if语句块中有return的情况
1,如果一个类,有如下JAVA代码:
public class test {
public static void main(String args[]){
System.out.println('执行IF前');
int a=5;
if(a==5){
System.out.println('a==5');
return;
}else if(a!=5){
System.out.println('a!=5');
return;
}
System.out.println('执行条件语句后');
}
}
执行后输出结果为:
执行条件语句前
a==5
即return 执行之后,将退出所在的方法,而不再执行后面没有执行的语句
2,如果将其中的初始值a=5改为a=55,输出如下:
执行条件语句前
a!=5
3,如果将else if改为else,如下,则后面的语句会报错
public class test {
public static void main(String args[]){
System.out.println('执行条件语句前');
int a=5;
if(a==5){
System.out.println('a==5');
return;
}else{
System.out.println('a!=5');
return;
}
System.out.println('执行条件语句后');
}
}
因为这样写,无论a为何值,最后的System.out.println('执行条件语句后');语句都不会执行,编译器不允许这样写。
赞 (0)