NoSuchElementException dengan Java.Util.Scanner
NoSuchElementException dilemparkan apabila kaedah nextElement bagi penghitungan dipanggil dan tiada lagi elemen dalam penghitungan. Dalam kod Java yang diberikan, pengecualian ini ditemui apabila kelas Pengimbas cuba membaca integer kedua daripada input pengguna.
Coretan kod sumber yang anda berikan bertujuan untuk menggesa pengguna untuk dua integer dan mengira jumlahnya . Walau bagaimanapun, ada kemungkinan bahawa pengguna hanya memasukkan satu integer, meninggalkan pengimbas tanpa input yang sah untuk kaedah nextInt().
Untuk menangani isu ini, anda boleh memasukkan semakan untuk menentukan sama ada pengimbas mempunyai satu lagi integer tersedia sebelum cuba membacanya. Berikut ialah versi kod yang dikemas kini:
import java.util.Scanner; public class Addition { public static void main(String[] args) { // creates a scanner to obtain input from a command window Scanner input = new Scanner(System.in); int number1; // first number to add int number2; // second number to add int sum; // sum of 1 & 2 System.out.print("Enter First Integer: "); // prompt if (input.hasNextInt()) { number1 = input.nextInt(); } else { // Handle the case where no number is entered number1 = 0; } System.out.print("Enter Second Integer: "); // prompt 2 if (input.hasNextInt()) { number2 = input.nextInt(); } else { // Handle the case where no number is entered number2 = 0; } sum = number1 + number2; // addition takes place, then stores the total of the two numbers in sum System.out.printf("Sum is %d\n", sum); // displays the sum on screen } // end method main } // end class Addition
Kod yang dikemas kini ini termasuk semakan tambahan untuk mengesahkan jika pengguna telah memasukkan integer sebelum membacanya menggunakan kaedah nextInt(). Ini membantu mengelakkan NoSuchElementException dan memastikan program berfungsi seperti yang diharapkan, walaupun pengguna memberikan input yang tidak sah atau tidak lengkap.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghalang `NoSuchElementException` Apabila Menggunakan `java.util.Scanner` untuk Membaca Berbilang Integer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!