嗨,我想问一下,因为我不确定是否适合使用异常:
public int Method(int a, int b) {
if(a<b) throw new ArgumentException("the first argument cannot be less than the second");
//do stuff...
}
我可以在 if 语句后抛出异常吗?还是我应该始终使用 try - catch 来处理异常?
最佳答案
这是完全正确的。这正是异常的用途,检查您的逻辑中的“异常”,以及不应该出现的事情。
捕获异常背后的想法是,当您将数据传递到某个地方并对其进行处理时,您可能并不总是知道结果是否有效,这就是您想要捕获的时间。
关于您的方法,您不想在 Method
中捕获但事实上当您调用它时,这里有一个示例:
try
{
var a = 10;
var b = 100;
var result = Method(a, b);
}
catch(ArgumentException ex)
{
// Report this back to the user interface in a nice way
}
在上面的例子中,a小于b所以你可以except在这里得到一个异常,你可以相应地处理它。
关于c# - if 抛出异常的语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6184691/