日期:2014-05-18  浏览次数:20670 次

关于返回Return的一些困惑

for(){
return;
}
是退出循环。
如果是
for(){
    for(){
          return;
    }
}
退出的只是最后一层循环吗?还是所有的循环都退出了。
如果
for(){
    if(){
          return;
    }
}
    
又是否会退出循环哪?

------解决方案--------------------
在一个函数中,直接退出这个函数并将这个返回值传递给调用的地方。
循环退出记得用break 和 continue。区别就是break;退出for循环,continue退出当前循环。
------解决方案--------------------
总之就是退出你使用的方法!
------解决方案--------------------
测试程序:

public class AAA {

public void tt(){
for(int i=0;i<20;i++){
if(i==3){
System.out.println("return  here");
return ;
}
}

System.out.println("exist ... ");
}

public static void main(String[] args){

AAA a = new AAA();
a.tt();


}

}

输出结果: 
return  here

由此可见,不仅能够直接退出循环,更重要的是,return退出的整个方法。
continue退出的是当前的这一轮循环,继续执行下一个。
break退出的整个循环,循环到此为止。

其实不太建议上面的写法。最好是退出循环,再退出方法。
------解决方案--------------------
楼上的都给出答案了
楼主其实可以自己试下  这样就不会有这种疑问了  还记得牢些
------解决方案--------------------
写个代码测试下看看