Pengendalian Ralat untuk nextInt() dalam Pengimbas
Apabila cuba mendapatkan integer menggunakan Scanner.nextInt(), pengguna kadangkala menghadapi ralat :
java.util.NoSuchElementException at java.util.Scanner.throwFor(Scanner.java:907) at java.util.Scanner.next(Scanner.java:1530) at java.util.Scanner.nextInt(Scanner.java:2160) at java.util.Scanner.nextInt(Scanner.java:2119)
Ralat ini timbul apabila aliran input tidak mengandungi integer untuk nextInt() untuk dibaca. Satu kaedah untuk menyelesaikannya ialah menggunakan hasNexInt(). Fungsi ini mengesahkan kehadiran integer sebelum cuba membacanya.
Scanner s = new Scanner(System.in); int choice = 0; if(s.hasNextInt()) { choice = s.nextInt(); } s.close();
Pengubahsuaian ini memastikan nextInt() hanya dipanggil apabila terdapat integer tersedia untuk dibaca, menghalang ralat. Selain itu, adalah amalan yang baik untuk menutup pengimbas apabila selesai untuk mengeluarkan sumber sistem.
Atas ialah kandungan terperinci Bagaimana untuk Mencegah 'java.util.NoSuchElementException' Apabila Menggunakan Scanner.nextInt()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!