return表示跳出方法体,一般情况放到方法体的末尾;常用在带返回值的方法中,但也可放在无返回值方法中,只是不能带值;
return带值
问题: 能否在方法实现中多次重复return 值;
答案: 不行,后面的return是不可到达的
案例:
public static int calc() {
int a = 1;
int b = 2;
return a+b;
//return a-b; //不可到达的代码(会报错)
}
注意: 可以写多次return的情况:在方法中有条件判断,每个出口都可以return 值;
案例:
public static void main(String[] args) {
int res = calc(2,1);
System.out.println("计算结果:"+res);
}
public static int calc(int a, int b) {
if(a>5) {
return a-b;
}else {
return a+b;
}
//return a-b; //不可到达的代码
}
return不带值
注意: 即便方法为void
,也可以以return
作为跳出方法体,但不可带值
方法返回类型为void
时:
return; //正确
return 1; //错
案例: 循环1~10,遇到3的倍数则结束,用方法封装
分许: 需要打印多个值,所以无需返回值;
public static void main(String[] args) {
print();
}
public static void print() {
for(int i=1;i<=10;i++) {
if(i%3==0) {
//break; //跳出循环
return; //跳出方法体
}
System.out.println(i);
}
System.out.println("方法最后...");
}