黑马程序员技术交流社区

标题: return和break有什么区别? [打印本页]

作者: 焦明坤    时间: 2014-12-18 08:19
标题: return和break有什么区别?
break   跳出内环当前循环体,进入下一次外循环。可设置停止外循环,需要对for语句进行标识。
return  跳出函数,可参考正常的有返回值的函数,不管有多少层循环,都直接返回所需要的值。
这样说对不对????
作者: jxlovqqvo    时间: 2014-12-18 14:13
break跳出循环,你写在那个循环体内他就跳出那个循环,当然多层循环的话只跳出一个,不会全部跳出去
  1. for(int i =0;i<10;i++){
  2.                        
  3.                         for(int k =0;k<10;k++){
  4.                                
  5.                                 System.out.println(k);
  6.                                 break;//只跳出int k的这个循环,外层循环照常运行
  7.                         }
  8.                        
  9.                 }
复制代码



return 是终止方法,如果方法有返回值就返回一个值,他和循环没关系不要搞混了,只要他出现了,那么就代表这个方法执行完了,就算再多的循环只要在这个方法内部都不会执行的,因为该方法已近完成它的任务了
作者: duluhua    时间: 2014-12-18 20:08
1.break和return是完全不同的概念
2.break是用在循环中的,其作用是跳出当前循环,或者跳出指定循环,跳出循环后,还可以继续执行循环后面的内容。
3.return:
      return后有值,如return 3;该钟return是用在方法中用于返回值的。
      另一种情况是单一 的一个return;该return的作用是,程序执行到此后,立刻停止执行。后面所有语句都不执行了。
4.应该清楚了吧
作者: zmhlnrs    时间: 2014-12-18 22:51
break就是跳出循环,程序读到return就结束
作者: xinjian00    时间: 2014-12-18 23:10
return是返回一个值,break是跳出一个循环
作者: shuoshuo    时间: 2014-12-18 23:31
break和return完全没什么关系,前者是跳出循环,后者是返回函数值
作者: Alexrl    时间: 2014-12-18 23:39
duluhua 发表于 2014-12-18 20:08
1.break和return是完全不同的概念
2.break是用在循环中的,其作用是跳出当前循环,或者跳出指定循环,跳出 ...

支持层主一个。
作者: 探寻者    时间: 2014-12-18 23:58
一般break是跳出当前循环,可以继续执行循环体;return是直接返回,不再执行循环。
作者: 小马范    时间: 2014-12-19 00:08
探寻者 发表于 2014-12-18 23:58
一般break是跳出当前循环,可以继续执行循环体;return是直接返回,不再执行循环。 ...

正解啊,  不要想太多了
作者: 青衫禅客    时间: 2014-12-19 00:12
对滴,还有如果没有返回值就是结束该函数
作者: zw937820438    时间: 2014-12-19 00:18
break是用来跳出循环的,例如for,while,do-while都可以跳出,但不跳出函数
return是使整个函数返回的,后面的不管是循环里面还是循环外面的都不执行
作者: 胖胖爱java    时间: 2014-12-19 00:18
break适用范围:只能用于switch或者是循环语句中。
break作用:
        1. break用于switch语句的作用是结束一个switch语句。
        2. break用于循环语句中的作用是结束当前所在的循环语句。
如果break在for内循环内想要结束外循环的for就需要加上标签,如下例子:
class Demo
{
        public static void main(String[] args)
        {
                aaa:for(int j = 0 ; j<3 ; j++){ // j=0 外层for循环
                        bbb:for(int i = 0 ; i< 2 ; i++){  // i=0 内层for循环
                                System.out.println("hello world"); // 1       
                                break aaa;//结束外for循环
                        }



return 关键字的作用:
        1. 返回数据给函数的调用者。
        2. 函数一旦执行到了return关键字,那么该函数马上结束。 (能结束一个函数)
                       
        break关键字与return关键字的区别:
        1.break关键字是结束一个循环。
        2. return关键字是结束一个函数。

public static void print(){
                for(int i = 0 ; i < 5;  i++){
                        System.out.println("hello world");
                        ///break; //结束了当前的循环
                        return ; //结束当前的函数
                }

       

作者: 焦明坤    时间: 2014-12-19 21:47
duluhua 发表于 2014-12-18 20:08
1.break和return是完全不同的概念
2.break是用在循环中的,其作用是跳出当前循环,或者跳出指定循环,跳出 ...

恩,清楚了,谢谢了。。。
作者: 焦明坤    时间: 2014-12-19 21:48
胖胖爱java 发表于 2014-12-19 00:18
break适用范围:只能用于switch或者是循环语句中。
break作用:
        1. break用于switch语句的作用是结束一个s ...

谢谢,明白了,讲的很详细。
作者: I空空    时间: 2014-12-19 22:46
return用在函数,break用在循环语句
作者: 魏文杰    时间: 2014-12-19 23:39
怎么吧break和return联系在一起了呢,,,没有联系,运用的地方都不一样。。。
作者: caobin    时间: 2014-12-20 00:27
不回答概念,但是用起来的话:return连函数都跳出了,循环当然也就不执行了,这样用貌似return更加强力一点  哈哈
作者: 焦明坤    时间: 2014-12-20 21:11
感觉以前学的时候很清楚,结果越往后越乱。。。。
作者: ben_vs_cong    时间: 2014-12-20 21:24
break是结束当前循环,应用范围是循环语句和switch语句中。而return就是相当于结束,有点类似大括号的作用吧,比如一个方法执行是碰见大括号或者return语句就结束。
作者: Afridoce    时间: 2014-12-20 21:59
视频多看几次就懂了~~~~
作者: Bali    时间: 2014-12-20 22:43
break 是跳出循环
return 是返回
作者: 夜空中的星    时间: 2014-12-20 23:26
大概就是这样
作者: 程梦真    时间: 2014-12-20 23:37
其实最简单的你不用这么记,
教你:
     一、  break应该和continue一起记,
           1、break直接跳出循环,
           2、continue跳出本次循环。
      二、 return 分为 return 加参数,
           1、return不加参数,程序终止
           2、return加参数,返回一个值,



作者: wata    时间: 2014-12-21 09:08
本帖最后由 wata 于 2014-12-21 09:15 编辑

return:
return 后面加参数,是结束return所在的函数,并返回一个值。
return 后面没加参数,就是直接结束return所在的函数。

break:
break 和 continue 做区分。
           continue:只能作用于循环结构。继续循环。特点:结束本次循环,继续下一次循环。
           break:跳出并结束整个循环。
举例:
  1. public class BreakAndContinue {
  2.         public static void main(String[] args){
  3.                 //continue:只能作用于循环结构。继续循环。特点:结束本次循环,继续下一次循环。
  4.                 w:for(int x=0; x<3; x++)
  5.                 {
  6.                         for(int y=0; y<4; y++)
  7.                         {
  8.                                 System.out.println("x="+x);
  9.                                 continue w;//w指continue作用于外循环
  10.                         }                               
  11.                 }
  12.        
  13.                 //break:跳出并结束整个循环。
  14.                 w:for(int x=0; x<3; x++)
  15.                 {
  16.                         for(int y=0; y<4; y++)
  17.                         {
  18.                                 System.out.println("x="+x);
  19.                                 break w;//w指break作用于外循环
  20.                         }                               
  21.                 }
  22.         }
  23. }
复制代码








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2