这看起来应该很简单,但是这段代码不起作用。
我只需要检查并确保当前 race_position 不等于总计数或不大于计数或不等于 0。如果是其中任何一个,那么我想跳出循环。
我什至在 visual studio 调试器中检查过它,看到当 race_position 为 0 时,它仍然表现得好像它不是 0 并且从未跳出循环。
有没有办法简化它并让它发挥作用?
谢谢!
if (race_position != race_team.Count || !(race_position > events.Count) || race_position != 0)
{
next_position = (race_position + 1);
}
else
{
break;
}
最佳答案
您正在 OR
ing (||
) 条件在一起,这意味着如果一个条件为真,那么该 block 将执行。您希望将它们AND
(&&
) 放在一起,这样它们都必须为真,否则循环将退出。
当 race_position
为 0 时,race_position != race_team.Count
为 true
,因此循环继续。
关于c# - 检查 if else block 中的多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40427268/