Heim >Java >javaLernprogramm >Warum erhalte ich eine „NoSuchElementException', wenn ich die Scanner-Klasse von Java verwende?
Fehlerbehebung bei „NoSuchElementException“ in Java.Util.Scanner
Der „NoSuchElementException“-Fehler in Java wird typischerweise durch einen Leseversuch verursacht eine geschlossene oder leere Eingabequelle mithilfe der Scanner-Klasse. In Ihrem Fall tritt diese Ausnahme auf, wenn Sie versuchen, die zweite Ganzzahl vom Benutzer zu lesen (Zeile 17 in Ihrem Code).
Um dieses Problem zu beheben, untersuchen wir die Scanner-Klasse im Detail:
Scanner-Klasse
Mit der Scanner-Klasse können Sie Textdaten aus einer Quelle wie System.in (der Konsole) lesen. Mit seinen Methoden können Sie verschiedene Datentypen, einschließlich Ganzzahlen (nextInt()), aus der Quelle extrahieren.
In Ihrem Code erstellen Sie ein Scannerobjekt namens „input“, um Eingaben von der Konsole zu lesen. Anschließend versuchen Sie, zwei ganzzahlige Werte in die Variablen Nummer1 und Nummer2 einzulesen.
Fehleranalyse
Der Fehler „NoSuchElementException“ deutet darauf hin, dass das Scanner-Objekt erwartet, eine Ganzzahl zu finden in der nächsten Eingabezeile, kann aber keine finden. Dies kann mehrere Gründe haben:
Vorgeschlagene Lösung
Um dieses Problem zu beheben, sollten Sie eine Prüfung hinzufügen, um sicherzustellen, dass der Scanner vor dem Extrahieren eine weitere Ganzzahl lesen muss it:
if (input.hasNextInt()) { number2 = input.nextInt(); } else { // Handle the case where no integer is found // (e.g., display an error message or set number2 to a default value) }
Durch die Einbindung dieser Prüfung können Sie feststellen, ob eine andere Ganzzahl verfügbar ist, bevor Sie versuchen, sie zu lesen. Wenn keine vorhanden ist, können Sie entsprechende Maßnahmen ergreifen, z. B. eine Fehlermeldung anzeigen oder Nummer2 auf einen Standardwert setzen.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich eine „NoSuchElementException', wenn ich die Scanner-Klasse von Java verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!