我怎样才能处理与我的情况相反的情况?

时间:2013-07-12 09:29:32

标签: c#

我有一个foreach循环,其中代码不需要在一个特例中运行。我这样做了:

if (!IsZoom && entry.StartDate.Year != Year && entry.EndDate.Year != Year)
{
}
else
{
    // my code...
}

不知怎的,我对此并不满意。写下这个可能更好吗?

bool foo = !IsZoom && entry.StartDate.Year != Year && entry.EndDate.Year != Year;
if (!foo)
{
    // my code...
}

1 个答案:

答案 0 :(得分:5)

扭转你的逻辑。反转所有布尔表达式,并将AND替换为OR

if (IsZoom || entry.StartDate.Year == Year || entry.EndDate.Year == Year) {
    // Do something...
}