今天在编码时忽然产生一个疑问:程序中有一个while循环,循环体执行的是某个附带条件限制的操做。我如今想达到的目的是 => 条件成立,就执行操做,并跳出循环;条件不成立就跳出当次的while循环。 那么,如何跳出当次的while循环呢?编码
下面是伪代码:spa
while(true) { if(知足某条件) { //Do Something 跳出整个while循环 }
else { //Do Something 跳出本次循环 } }
其实,能够用continue跳出本次的while循环。 即continue不只能够用于for循环,在while循环中也是适用的。code
用C#实现上面的伪代码:blog
while(true) { if(知足某条件) { //Do Something break; } else { //Do Something continue; } }
===========string
下面以一个小的Demo来讲明一下while中的退出,贴代码:it
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没有执行到。for循环
若是把最后一个if的判断条件改成40,则会发生什么样的结果呢?class
结果是不单单跳出了while循环,并且退出了循环所在的方法JumpOutWhile。循环
总结:程序
在while循环中:
continue : 退出本次循环,若是循环还未结束 =>继续下一个循环;
break:退出整个的while循环;
return: 退出while循环所在的方法。