gpt4 book ai didi

c# - while 循环何时检查其条件

转载 作者:行者123 更新时间:2023-11-30 14:39:39 24 4
gpt4 key购买 nike

你好,我有这样的东西:版本 1:

bool noErrors = true;
while(noErrors)
{
noErrors = ValidateControl(txtName);

// other code
}

版本 2:

bool noErrors = true;
while(noErrors)
{
if(!ValidateControl(txtName)) break;

// other code
}

我使用此代码来验证表单,如果验证返回 false,我想在执行“其他代码”之前中断。因为我不知道循环何时检查它的条件,所以我不知道哪个更有意义。我应该使用第一个还是第二个版本,还是第三个?

谢谢你的时间

最佳答案

版本 2 将在运行 //other code 之前中断。直到下一次迭代开始时,版本 1 才会进行检查。

bool noErrors = true;
while(noErrors)
{
noErrors = ValidateControl(txtName);
// other code
}

每次迭代前检查。

bool noErrors = true;
do
{
noErrors = ValidateControl(txtName);
// other code
} while(noErrors);

每次迭代后检查。

在迭代期间都不检查。正如其他回答者所述,以下代码简化了示例,但让我问了一个问题, txtName 的有效性是否可能在循环执行期间发生变化?其他一些限制条件会更有用吗?

while (ValidateControl(txtName)) 
{
// other code
}

如果txtName的有效性不会改变,考虑,

if (ValidateControl(txtName))
{
while(/*Some other condition*/)
{
// other code
}
}

关于c# - while 循环何时检查其条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6250787/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com