可能错误的空语句 C#

Possible Mistaken Empty Statement C#

这是我的代码。我将 counterpart 设置为 20,并且在这些行中收到警告 possible mistake empty statement。我的目标是提高速度,让你走得更难。当我只输入数字 20 时,同样的问题发生了。截至目前,它每次只增加 .75。

if(speed < counterpart);
            {
                speed += 0.25F;
            }
            if(speed > counterpart);
            {
                 speed += 0.5F;
            }

删除 if 语句末尾的分号。

因为它们,你总是 运行 大括号中的两个语句。您的代码等同于:

if(speed < counterpart);  // empty 'if' statement, doing nothing even if true

speed += 0.25F;

if(speed > counterpart);  // same here

speed += 0.5F;

两个块都被执行了,因为你的 if 语句后面有分号 (;),所以它们没有做任何事情。试试这个:

if(speed < counterpart)
    speed += 0.25F;

else if(speed > counterpart)
    speed += 0.5F;

注意:我还在第二个 if 语句上添加了一个 else,以防止在第一个语句成功时执行第二个语句。