【问题标题】:Why doesn't the || operator work for me? [closed]为什么不||接线员为我工作? [关闭]
【发布时间】:2017-03-14 13:49:44
【问题描述】:

我是编码新手,目前正在独自完成我的第一个项目。我试图让程序比较一些数据,但由于某种原因我不能使用 OR (||) 运算符。有人知道为什么吗?这是一个WPF项目。 这是我的代码:

【问题讨论】:

  • rndNumber == x || rnbNumber==y
  • 阅读错误信息?我敢打赌你已经习惯了 JavaScript。提示:你需要一个布尔值...
  • 您是在检查las2 是否为空,还是在检查rndNumb 是否等于las1 或las2?
  • 请在答案中直接发布您的代码(以文本格式)。

标签: c# operator-keyword


【解决方案1】:

应该是这样的

while (rndNumber == 1as1 || rndNumber == 1as2)

|| 运算符后需要指定完整的布尔表达式,只有右参数没有简写。

【讨论】:

  • 这应该是while,而不是if。
  • 不错,已更改。谢谢!
【解决方案2】:

像这样更改您的代码:

while (rndNumb == las1 || rndNumb == las2)

在您的方法中,只有第一个等式“rndNumb == las1”按您的预期工作。第二个“las2”只是一个变量。因此,您将布尔值“真/假”与 int 变量进行比较。

【讨论】:

  • 一个答案如果能首先解释为什么这是错误的,对人们的帮助会更大......
  • @MongZhu 给你。
【解决方案3】:

让你的代码像这样:

    while ((rndNumb == las1) || (rndNumb == las2))

想象一下:你要求计算机只在其中一个条件出现时才运行循环,所以你需要弄清楚条件是什么:

要么 (rndNumb=las1) || (rndNumb=las2),所以,你把它放在括号里。

【讨论】:

  • 括号不是必须的
  • 我把括号 not 因为它特别必要,但使条件更具可读性(这在生产环境中是必须的)。
  • 我同意使用括号更容易看出这如何解决问题中的问题。但我认为你的意思是括号是强制性的。我个人的看法是不带括号更好看,因为它们会增加混乱。
猜你喜欢
  • 1970-01-01
  • 2012-11-09
  • 2020-05-31
  • 2012-12-07
  • 2021-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多