C# - 编写方法块

Gra*_*ant 2 c# methods

这是关于方法块结构的一般问题.鉴于以下两种选择,有没有人对什么是更好的设计方法有意见?

private void Method1()
{
    if (!A)
    {
        return;
    }

    if (!B)
    {
        return;
    }

    if (!C)
    {
        return;
    }

    // DO WORK.......

    return;
}

private void Method2()
{
    if (A)
    {
        if (B)
        {
            if (C)
            {
                // DO WORK.......

                return;
            }
        }
    }

    return;
}
Run Code Online (Sandbox Code Playgroud)

Noo*_*ilk 10

我更喜欢方法1,即"提前退出"方法.在我看来,它更清楚.我真的试图避免许多嵌套的'if'语句.

另外,你不能在void方法中返回'null':)