Saya memiliki lingkaran yang terlihat seperti ini:
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
Ini adalah konten utama dari metode yang tujuan utamanya adalah mengembalikan array float. Saya ingin metode ini kembali null
jika ada kesalahan, jadi saya meletakkan loop di dalam try...catch
blok, seperti ini:
try {
for (int i = 0; i < max; i++) {
String myString = ...;
float myNum = Float.parseFloat(myString);
myFloats[i] = myNum;
}
} catch (NumberFormatException ex) {
return null;
}
Tapi kemudian saya juga berpikir untuk meletakkan try...catch
blok di dalam loop, seperti ini:
for (int i = 0; i < max; i++) {
String myString = ...;
try {
float myNum = Float.parseFloat(myString);
} catch (NumberFormatException ex) {
return null;
}
myFloats[i] = myNum;
}
Apakah ada alasan, kinerja atau sebaliknya, untuk lebih memilih satu daripada yang lain?
Sunting: Konsensus tampaknya lebih bersih untuk meletakkan loop di dalam try / catch, mungkin di dalam metodenya sendiri. Namun, masih ada perdebatan tentang mana yang lebih cepat. Bisakah seseorang menguji ini dan kembali dengan jawaban yang seragam?