我有一个循环,大致如下:
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内部更加简洁,可能放在自己的方法内部。然而,仍有人争论哪种方法更快。有人可以测试一下并给出一个统一的答案吗?