c# - 检查 if else block 中的多个条件

标签 c#

这看起来应该很简单,但是这段代码不起作用。

我只需要检查并确保当前 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;
}

最佳答案

您正在 ORing (||) 条件在一起,这意味着如果一个条件为真,那么该 block 将执行。您希望将它们AND (&&) 放在一起,这样它们都必须为真,否则循环将退出。

race_position 为 0 时,race_position != race_team.Counttrue,因此循环继续。

关于c# - 检查 if else block 中的多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40427268/

相关文章:

C# 使用常量加速解析器?虽然是抽象类

c# - 在 MVC 4 和 Backbone.js 中传递查询字符串中的对象

c# - 转换类型

c# - 跨多个项目共享 wwwroot

C# AxWindowsMediaPlayer 循环

c# - Web.Optimizations - 有什么方法可以从 Style/Script Bundle 中获取所有内容?

c# - ASP ImageButton 与按钮

c# - ComponentSerializationService 不反序列化所有属性

c# - 更新命令执行非查询 - 语法错误

c# - 使用星号时导致程序集版本增加的原因是什么?