黑马程序员技术交流社区

标题: return,break,continue三者区别 [打印本页]

作者: 酱悠先生    时间: 2014-4-9 19:52
标题: return,break,continue三者区别
本帖最后由 酱悠先生 于 2014-4-10 12:39 编辑

return,break,continue三者区别
作者: 贰的23次方    时间: 2014-4-9 20:06
return表示本函数结束,如果用在主函数中,表示本程序结束
break用在循环或者switch中,在循环中使用break表示结束本层循环,用在switch表示不再执行下面的case语句,直接跳出switch.
continue用在循环中表示,结束本次循环,进入下一轮循环
作者: luoyilan222    时间: 2014-4-9 20:41
break ,跳出当前循环。
continue ,终了循环中当前代码,继续循环第二次
return, 跳出当前方法!
作者: Monkey·D·Chas    时间: 2014-4-9 20:50
break ,结束当前循环。继续执行当前循环后边的语句

continue ,结束本次循环,继续执行当前循环

return, 结束本方法的执行。 可以返回参数!
作者: 爱吃桃子的猫    时间: 2014-4-9 21:57
本帖最后由 爱吃桃子的猫 于 2014-4-21 19:22 编辑

举个例子:

static void Main(string[] args)
        {
            for (int x = 0; x <= 2; x++)
            {
                for (int y = 0; y <= 2; y++)
                {
                    if (y==1)
                        continue;
                    Console.WriteLine("x={0}  y={1}", x.ToString(), y.ToString());
                }
            }
        }

continue输出情况
x=0  y=0
x=0  y=2
x=1  y=0
x=1  y=2
x=2  y=0
x=2  y=2
我们可以看出y=1没有输出,但是x全部输出,所以continue只是跳出当次循环(没有跳出当前循环体),继续下次循环。

break输出情况
x=0  y=0
x=1  y=0
x=2  y=0
当y=1时就会跳出里面的循环体继续执行外面循环体接下来的循环。

总结:关键是要理解
当次循环:一个循环体里面的某一步循环;
循环体:整个循环。
return就没什么好说的了。
break    跳出当前循环体,
continue 跳出循环体中的当次循环,进入下一次循环
return终止程序向前,并可返回一个值
另可以看下论坛关于这个问题的其他帖子
1.区别continue,break,return
http://bbs.itheima.com/forum.php?mod=viewthread&tid=51776
2.C# 跳转语句break、continue和return的用法区别
http://bbs.itheima.com/forum.php?mod=viewthread&tid=87492
3.break,continue,return的区别
http://bbs.itheima.com/forum.php?mod=viewthread&tid=54750
加油!

作者: 鲤鱼    时间: 2014-4-9 22:48
……………………回答的人真多啊
作者: 黒■色    时间: 2014-4-9 22:48
  1. #region 1加到100,输出累积加到20时的当前数

  2.             int sun = 0;
  3.             int j = 1;
  4.             for (j = 1; j <= 100; j++)
  5.             {
  6.                 sun += j;
  7.                 if (sun >= 20)
  8.                 {
  9.                     break;
  10.                 }
  11.             }
  12.             Console.WriteLine("累积加到20时的当前数{0}", j);
  13.             #endregion

  14.             #region 求1到100之间不能被7整除的和

  15.             int m = 1;
  16.             int sub = 0;
  17.             while(m<=100)
  18.             {
  19.                
  20.                 if (m % 7 == 0)
  21.                 {
  22.                     m++;
  23.                     continue;
  24.                 }
  25.                 sub += m;
  26.                 m++;
  27.             }
  28.             Console.WriteLine("sub={0}", sub);
  29.             #endregion
  30.                 Console.ReadKey();
复制代码

break:跳出当前的循环。
continue:不再执行循环体中continue下面的语句,直接进行下一次循环,而不是跳出循环。
return:结束当前的方法,并且可以有返回子。




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