Ich habe eine Schleife, die ungefähr so aussieht:
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
Dies ist der Hauptinhalt einer Methode, deren einziger Zweck darin besteht, das Array von Floats zurückzugeben. Ich möchte, dass diese Methode zurückgegeben wird, null
wenn ein Fehler auftritt. Deshalb füge ich die Schleife try...catch
wie folgt in einen Block ein:
try {
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
} catch (NumberFormatException ex) {
return null;
}
Aber dann dachte ich auch daran, den try...catch
Block so in die Schleife zu setzen :
for (int i = 0; i < max; i++) {
String myString = ...;
try {
float myNum = Float.parseFloat(myString);
} catch (NumberFormatException ex) {
return null;
}
myFloats[i] = myNum;
}
Gibt es einen Grund, eine Leistung oder etwas anderes, einen dem anderen vorzuziehen?
Bearbeiten: Der Konsens scheint zu sein, dass es sauberer ist, die Schleife innerhalb des try / catch zu platzieren, möglicherweise innerhalb seiner eigenen Methode. Es gibt jedoch immer noch Debatten darüber, was schneller geht. Kann jemand dies testen und mit einer einheitlichen Antwort zurückkommen?