应该试试...捕捉到循环内部还是外部?
2022-08-31 06:14:34
我有一个看起来像这样的循环:
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
这是一个方法的主要内容,该方法的唯一目的是返回浮点数组。我希望此方法在出现错误时返回,因此我将循环放在块内,如下所示:null
try...catch
try {
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
} catch (NumberFormatException ex) {
return null;
}
但后来我也想到了把块放在循环中,就像这样:try...catch
for (int i = 0; i < max; i++) {
String myString = ...;
try {
float myNum = Float.parseFloat(myString);
} catch (NumberFormatException ex) {
return null;
}
myFloats[i] = myNum;
}
是否有任何理由,无论是性能还是其他方面,都比另一个更偏爱?
编辑:共识似乎是,将循环放在 try/catch 中会更干净,可能放在它自己的方法中。但是,关于哪个更快仍然存在争议。有人可以测试一下并得到一个统一的答案吗?