对逻辑使用异常是好的做法吗?
Is good practice to use exceptions for logic?
我有这个例子:
try {
images = this.getFinderFiles(path);
} catch (DirectoryNotFoundException exception) {
return [];
}
这段代码有问题吗?
我建议不要对预期的错误情况使用异常处理。异常处理需要时间,必须完成堆栈展开。
在您的情况下,如果您通常可以期望 'path' 通常存在,因此该方法可以 return 一个不错的结果 - 所以您不期望 'this.getFinderFiles' 失败 - 那么可以使用这里例外。但否则在调用 'getFinderFiles' 之前先测试路径是否存在。那应该更快,并且对我来说更具可读性。
顺便提一句。你能检查 'getFinderFiles' 中是否存在 'path' 并且最终 return '[]' 已经存在了吗?
我有这个例子:
try {
images = this.getFinderFiles(path);
} catch (DirectoryNotFoundException exception) {
return [];
}
这段代码有问题吗?
我建议不要对预期的错误情况使用异常处理。异常处理需要时间,必须完成堆栈展开。 在您的情况下,如果您通常可以期望 'path' 通常存在,因此该方法可以 return 一个不错的结果 - 所以您不期望 'this.getFinderFiles' 失败 - 那么可以使用这里例外。但否则在调用 'getFinderFiles' 之前先测试路径是否存在。那应该更快,并且对我来说更具可读性。 顺便提一句。你能检查 'getFinderFiles' 中是否存在 'path' 并且最终 return '[]' 已经存在了吗?