在方法中停止执行的最佳方法

时间:2015-02-13 10:24:48

标签: c# break

this question

相关

假设我有一个很长的方法,我想在某些条件下中止。最好的方法是什么?以下是我能想到的两种方式。

try
{
    // if i is 0, we don't want to continue
    int i = testi();
    if(i == 0)
        throw new StopException("stop")

    // the rest of our code
}
catch(StopException stop)
{
    // handle our stop exception
}
catch{
    // everything else
}

这是另一个

bool go = true
while(go)
{
    // if i is 0, we don't want to continue
    int i = testi();
    if(i == 0)
    {
        go = false;
        break;
    }
    // the rest of our code
}

这两个看起来都很笨拙。抛出异常似乎有点矫枉过正,我实际上并不想循环任何东西,因此while被滥用。在我看来,在C#中应该(并且可能是)更优雅的方式吗?

RETURN!

DOY。我实际上已经使用过很多次了,出于某种原因,它今天突然出现了。谢谢你沉溺于我的愚蠢行为

2 个答案:

答案 0 :(得分:5)

中断C#方法的标准方法是使用return语句。

如果方法无效,只需return,如果不是,那么return nullreturn 0取决于具体情况。

绝对不需要抛出异常而不是返回。

答案 1 :(得分:0)

只需使用return语句退出方法。

void longMethod()
{
    int i = testi();
    if(i == 0)
        return;

    // Continue with method
}