A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王小五-fight 中级黑马   /  2013-4-18 15:50  /  2256 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 王小五-fight 于 2013-4-18 22:16 编辑

return和break的使用区别?

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

5 个回复

倒序浏览
break 是跳出循环。
return是结束return下面的运行,直接返回函数。
回复 使用道具 举报
break;是跳出循环
return是程序结束返回;
continue:是执行下一次循环;
打个比方说,小明去上大学,上到大三;
如果是break,就说明小明被退学了;
如果是return:小明挂了
如果是continue:是放假了,小明下个学期继续上课;
break只能用到循环和switch语句中;

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
break
一般用于跳出本循环,即跳出break所在的循环,哪个循环调用了break,就跳出哪个循环;


比如:
while(){
    for(;;){
     …………
      break;
       ……
        }
    }


在这段模板中,for 调用了break;当执行到break时跳出for,但是不跳出while,而是继续执行while循环

------------------------------------------------------------------
return
一般的用法 时为了实现返回,返回一个值或其他复杂类型,都是可以的,
return 一般都用在被调用的对象(对象一)里面,调用以后返回到调用对象(对象二)即,当对象二调用对象一时,如果对象一内部调用了return语句,则程序执行返回到,对象二调用对象一得下一条语句继续执行,
比如:(这里的对象在C语言里面就是函数)
对象一(){
return;
}
对象二(){
语句一;
对象一();
语句二;


}
当程序执行到对象二时,会调用对象一,转到对象一种去执行,当执行到return时,会返回到对象二中,执行语句二


对于你的提问现给出如下解释:
第一个程序段


时对于return的调用,调用之后,程序会跳出main函数,也就是说return有结束函数调用的功能。


第二个程序段:
do
while();
是一个循环体,break在循环内部调用,跳出循环,但不跳出if,


一般语言里面的跳转都满足上述规律,但不排除,在特殊的算法内部特殊的应用

break;是跳出循环;
return; 直接返回方法,结束整个函数。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
break语句:
break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句。由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才是合法的。
如果一个循环的终止条件非常复杂,那么使用break语句来实现某些条件比用一个循环表达式来表达所有的条件容易得多。
for(var i=1;i<=10;i++)
{
   if(i==6) break;
   document.write(i);
}
//输出结果:12345
continue语句:
continue语句和break语句相似。所不同的是,它不是退出一个循环,而是开始循环的一次新迭代。
continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!
for(var i=1;i<=10;i++)
{
  if(i==6) continue;
  document.write(i);
}
//输出结果:1234578910
return语句:
return语句就是用于指定函数返回的值。return语句只能出现在函数体内,出现在代码中的其他任何地方都会造成语法错误!
当执行return语句时,即使函数主体中还有其他语句,函数执行也会停止!

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
总的来说,return是表示一个方法结束以后返回了一些什么数据给调用它的方法。一个方法执行到return以后就跳转回原来调用这个方法的位置了。如:int a= a.test();这句就把test方法返回的值传给了调用它的a并赋值了。
break是表示循环的跳出或者终止某个switch项。在循环中你如果想立即跳出循环,只需要写break就可以了。然后程序就跳出break所在的循环,然后继续往下进行了。
return和break下面都不要再写语句,那些是废语句,编译会出错的

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马