我有兩個條件,ShouldCheckForErrors
和HasErrors
如何正確跳過步驟2個,如果條件爲真
我的代碼是
if(ShouldCheckForErrors && HasErrors)
{
//Do nothing
}
else
{
PassTest()
}
我覺得這是一個非常冗長的檢查。沒有辦法可以在不必使用else
的情況下執行單一檢查?
例如:
if(!ShouldCheckForErrors && !HasErrors)
{
PassTest()
}
不起作用,因爲這將無法調用PassTest()
時ShouldCheckforErrors
是true
,但HasErrors
是false
。 (反之亦然)
我只是覺得我忘了我的邏輯操作符。
根據第一個代碼(這是「更長」),通過意味着*兩個*都是真的,這不是*或*,而是*和*。 – Tigran
@Tigran:這不是如何否定的作品。 http://en.wikipedia.org/wiki/De_Morgan%27s_laws – SLaks
這是一個好方法。現在我不知道如何@Adil答案編譯到,但我認爲這兩個條件都檢查在哪裏,如果'!ShouldCheckForErrors'評估爲'真'''HasErrors'不會被檢查 –