JHi*_*son 1 c# logic operators conditional-statements
我有两个条件,ShouldCheckForErrors而且HasErrors
我的代码是
if(ShouldCheckForErrors && HasErrors)
{
//Do nothing
}
else
{
PassTest()
}
Run Code Online (Sandbox Code Playgroud)
我觉得这是一张很长的支票.有没有办法我可以做一次检查而不必使用else?
例如:
if(!ShouldCheckForErrors && !HasErrors)
{
PassTest()
}
Run Code Online (Sandbox Code Playgroud)
不工作,因为这将无法打电话PassTest()的时候ShouldCheckforErrors是true,但是HasErrors是false.(反之亦然)
我觉得我忘记了逻辑运算符.
你正在寻找德摩根定律:
if (!ShouldCheckForErrors || !HasErrors)
Run Code Online (Sandbox Code Playgroud)
换句话说:
如果没有错误,或者我们没有检查错误,您应该通过.
!在得到两个条件的结果后使用not运算符
if(!(ShouldCheckForErrors && HasErrors))
{
PassTest();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
429 次 |
| 最近记录: |