Halo semua! Pernah mengalami masalah error pada field di Android Studio?
Aplikasi kalian error / force close jika inputannya kosong (tidak diisi apapun) dan langsung klik pada aksinya. Kalau kasusnya disini ketika klik tombol (button) “HITUNG”.
💻 Mulai Belajar Pemrograman
Belajar pemrograman di Dicoding Academy dan mulai perjalanan Anda sebagai developer profesional.
Daftar SekarangNah gimana tuh? Coba dilihat hasil run nya di Android Studio kalian.
Kalau aplikasi ini begini nih penampakannya :
Coba di perhatikan baik-baik. Disitu di katanya java.lang.NumberFormatException: Invalid double: “”
Kenapa tuh bisa begitu? Itu karena inputan yang masuk tidak sesuai dengan yang diharapkan, kalau kasus di sini kan kita mengaharapkan inputan berupa angka (double) dan kalau di perhatikan baik-baik tidak ada yang salah dengan coding di atas, tapi hanya butuh sedikit pelengkap.
Solusinya?? Kita bungkus aksi code kita dengan TRY CATCH seperti ini
1 2 3 4 5 6 |
try { listing program (blok try) } catch (Throwable t){ error handler (blok catch) } |
Fungsi TRY CATCH sendiri untuk menangani suatu kesalahan / error pada suatu listing program.
Nah jadi begini codenya setelah sedikit modifikasi :
Sekarang coba run lagi aplikasinya ! Lancar kan ☺
Ada satu lagi nih tipsnya selain menggunakan TRY CATCH kalian juga bisa membungkus codingan kalian dengan IF ELSE strukturnya hampir sama dengan TRY CATCH
1 2 3 4 5 6 7 8 |
IF (kondisi TRUE){ .... aksi yang di jalankan jika kondisi terpenuhi } ELSE { .... aksi yang di jalankan jika tidak sesuai dengan kondisi pertama } |
Kalau diterapkan ke aplikasi di atas bentuknya jadi seperti ini :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
String FormPanjang = v_panjang.getText().toString().trim(); String FormLebar = v_lebar.getText().toString().trim(); if (FormPanjang != null && FormLebar != null){ double p = Double.parseDouble(FormPanjang); double l = Double.parseDouble(FormLebar); double h = p * l; t_hasil.setText("Hasil : " + h); Context context = getApplication(); toast = Toast.makeText(context, "Perhitungan berhasil !", Toast.LENGTH_SHORT); toast.show(); } else { Log.e("Error", String.valueOf(e)); t_hasil.setText("0,0"); toast = Toast.makeText(context, "Data yang Anda inputkan kosong !", Toast.LENGTH_SHORT); toast.show(); } |
Yuk dicoba lagi ! Berhasil juga kan ☺
Kamu dapat belajar hal seperti ini lebih banyak lagi di Dicoding Academy Belajar Membangun Aplikasi Android Native (www.dicoding.com/academies/26) yang materi nya dibuat oleh Google Developer Expert di Indonesia.
Semoga bermanfaat, nantikan tips kita selanjutnya dan selamat belajar..