而
while
运算符迭代一段代码,直到条件查询等于 false 或代码被 goto
, return
, break
或 throw
语句中断。
while
关键字的语法:
while( 条件 ){ code block; }
例:
int i = 0;
while (i++ < 5)
{
Console.WriteLine("While is on loop number {0}.", i);
}
输出:
“虽然在循环编号 1 上。”
“在循环编号 2 上。”
“虽然在循环编号 3 上。”
“在循环编号 4 上。”
“在循环编号为 5 时。”
while 循环是 Entry Controlled ,因为在执行封闭的代码块之前检查条件。这意味着如果条件为 false,while 循环将不会执行其语句。
bool a = false;
while (a == true)
{
Console.WriteLine("This will never be printed.");
}
提供 while
条件而不将其设置为在某些时候变为假,将导致无限或无限循环。应尽可能避免这种情况,但是,当你需要时,可能会出现一些特殊情况。
你可以创建如下循环:
while (true)
{
//...
}
请注意,C#编译器将转换诸如的循环
while (true)
{
// ...
}
要么
for(;;)
{
// ...
}
成
{
:label
// ...
goto label;
}
请注意,while 循环可以具有任何条件,无论多么复杂,只要它计算(或返回)布尔值(bool)。它还可以包含一个返回布尔值的函数(因为这样的函数的计算结果与表达式相同,例如`a == x’)。例如,
while (AgriculturalService.MoreCornToPick(myFarm.GetAddress()))
{
myFarm.PickCorn();
}