Mam pętlę, która wygląda mniej więcej tak:
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
Jest to główna treść metody, której jedynym celem jest zwrócenie tablicy liczb zmiennoprzecinkowych. Chcę zwrócić tę metodę, null
jeśli wystąpi błąd, więc umieszczam pętlę w try...catch
bloku, tak jak to:
try {
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
} catch (NumberFormatException ex) {
return null;
}
Ale potem pomyślałem również o umieszczeniu try...catch
bloku w pętli, w ten sposób:
for (int i = 0; i < max; i++) {
String myString = ...;
try {
float myNum = Float.parseFloat(myString);
} catch (NumberFormatException ex) {
return null;
}
myFloats[i] = myNum;
}
Czy jest jakiś powód, wydajność lub w inny sposób, aby preferować jedno od drugiego?
Edycja: Wydaje się, że konsensus polega na tym, że łatwiej jest umieścić pętlę wewnątrz try / catch, prawdopodobnie w ramach własnej metody. Nadal jednak trwa debata, która jest szybsza. Czy ktoś może to przetestować i wrócić z jednolitą odpowiedzią?