我有两个条件,ShouldCheckForErrorsHasErrors

我的代码是

if(ShouldCheckForErrors && HasErrors)
{
    //Do nothing
}
else
{
    PassTest()
}


我觉得这是一个非常漫长的检查。有没有一种方法可以不必使用else进行单次检查?

例如:

if(!ShouldCheckForErrors && !HasErrors)
{
    PassTest()
}


不起作用,因为当PassTest()ShouldCheckforErrorstrueHasErrors时,这将无法调用false。 (反之亦然)

我只是觉得我忘记了逻辑运算符。

最佳答案

您正在寻找De Morgan's Law

if (!ShouldCheckForErrors || !HasErrors)


换句话说:


  如果没有错误,或者我们没有检查错误,则应该通过。

08-05 12:41