Rumah >Java >javaTutorial >Bagaimana untuk Mengelakkan `java.lang.NumberFormatException` Apabila Menghuraikan Rentetan 'N/A'?
Mencegah java.lang.NumberFormatException apabila Menghuraikan Rentetan "N/A"
Apabila cuba menghuraikan rentetan angka, adalah penting untuk memastikan kesahihannya untuk menghalang NumberFormatException. Isu biasa timbul apabila menemui rentetan "N/A", yang tidak boleh ditukar kepada integer.
Gambaran Keseluruhan Pengecualian:
NumberFormatException dilemparkan apabila rentetan tidak sah cuba dihuraikan ke dalam jenis angka tertentu, seperti integer (Integer.parseInt). Seperti yang disaksikan dalam surih tindanan berikut, "N/A" membawa kepada pengecualian ini kerana ia bukan perwakilan integer yang sah.
Strategi Pencegahan:
Untuk mengelakkan ini pengecualian, anda boleh melaksanakan salah satu daripada teknik berikut:
Pengecualian Pengendalian:
Pendekatan ini melibatkan membungkus operasi penghuraian dalam blok cuba-tangkap, di mana NumberFormatException ditangkap dan dikendalikan dengan sewajarnya. Berikut ialah contoh:
try { int i = Integer.parseInt(input); } catch (NumberFormatException ex) { // Handle the exception here (e.g., log it, display an error message) }
Pemadanan Corak Integer:
Sebagai alternatif, anda boleh menggunakan ungkapan biasa untuk menyemak sama ada rentetan sepadan dengan format integer yang dijangkakan sebelum mencuba menghuraikannya. Berikut ialah contoh ringkas:
String pattern = "-?\d+"; if (input.matches(pattern)) { int i = Integer.parseInt(input); } else { // Handle non-integer string }
Dalam pendekatan ini, corak mentakrifkan perwakilan integer yang sah dan jika rentetan input tidak mematuhi corak ini, ia boleh dikendalikan secara berasingan.
Dengan melaksanakan salah satu daripada strategi ini, anda boleh memastikan bahawa kod anda mengendalikan rentetan bukan integer dengan anggun seperti "N/A", menghalang NumberFormatException daripada mengganggu pelaksanaannya.
Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan `java.lang.NumberFormatException` Apabila Menghuraikan Rentetan 'N/A'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!