作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不确定我是真的累了,错过了一些明显的东西,还是我的程序有问题。基本上我的 if 语句条件不起作用。
public bool check(string nextvaluebinary)
{
bool test = true;
for (int i = -1; i < 8; ++i)
{
i++;
System.Console.WriteLine(nextvaluebinary[i] + " " + nextvaluebinary[i + 1]);
if (nextvaluebinary[i] == 1)
{
System.Console.WriteLine("Activated");
if (nextvaluebinary[i + 1] == 0)
{
test = false;
System.Console.WriteLine("false");
}
}
else
{
test = true;
}
if (test == false)
{
break;
}
}
return test;
}
我传入字符串 0001010110 并得到以下输出:
0 0
0 1
0 1
0 1
1 0
但没有“activated”或“false”,即使最后一个是“1 0”。再次抱歉,如果这是一个愚蠢的问题,我们将不胜感激任何见解或帮助。
最佳答案
您正在将 char 与 int 进行比较。您尝试进行的检查与您尝试完成的检查具有完全不同的含义。您需要先检查它是否等于“1”,或者先将 char 转换为 int,以便进行数字比较。
if (nextvaluebinary[i] == '1')
关于c# - If 语句不工作 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31546671/
我是一名优秀的程序员,十分优秀!