首页 > 代码库 > while循环的跳出

while循环的跳出

今天在编码时突然产生一个疑问:程序中有一个while循环,循环体执行的是某个附带条件限制的操作。我现在想达到的目的是 => 条件成立,就执行操作,并跳出循环;条件不成立就跳出当次的while循环。 那么,如何跳出当次的while循环呢?

下面是伪代码:

while(true){  if(满足某条件)  {    //Do Something    跳出整个while循环  }
  else  {    //Do Something    跳出本次循环  }}

其实,可以用continue跳出本次的while循环。 即continue不仅可以用于for循环,在while循环中也是适用的

用C#实现上面的伪代码:

while(true){  if(满足某条件)  {    //Do Something    break;  }  else  {       //Do Something    continue;  }}

 ===========

下面以一个小的Demo来说明一下while中的退出,贴代码:

    class Program    {        static void Main(string[] args)        {            JumpOutWhile();        }        private static void JumpOutWhile()        {            int i = 0;            while (true)            {                i++;                if (i % 9 == 0)                {                    continue;                }                if (i == 50)                {                    break;                }                if (i == 100)                {                    //跳出while所在的方法                    //但是前面在i=50时,已经跳出while循环 => 不会执行该句                    return;                }                Console.WriteLine(i);            }        }    }   

结果:凡是9的倍数都未打印;50也未打印;return没有执行到。

如果把最后一个if的判断条件改为40,则会发生什么样的结果呢?

结果是不仅仅跳出了while循环,而且退出了循环所在的方法JumpOutWhile。

 

总结:

在while循环中:

continue : 退出本次循环,如果循环还未结束 =>继续下一个循环;

break:退出整个的while循环;

return: 退出while循环所在的方法。

 

while循环的跳出