Heim > Java > javaLernprogramm > Wie verhindert man „java.util.NoSuchElementException' bei Verwendung von Scanner.nextInt()?

Wie verhindert man „java.util.NoSuchElementException' bei Verwendung von Scanner.nextInt()?

DDD
Freigeben: 2024-11-10 22:12:02
Original
218 Leute haben es durchsucht

How to Prevent

Fehlerbehandlung für nextInt() im Scanner

Beim Versuch, eine Ganzzahl mit Scanner.nextInt() abzurufen, tritt bei Benutzern gelegentlich der Fehler auf :

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)
Nach dem Login kopieren

Dieser Fehler tritt auf, wenn der Eingabestream keine Ganzzahl zum Lesen von nextInt() enthält. Eine Methode zur Lösung dieses Problems ist die Verwendung von hasNexInt(). Diese Funktion überprüft das Vorhandensein einer Ganzzahl, bevor sie versucht, sie zu lesen.

Scanner s = new Scanner(System.in);
int choice = 0;

if(s.hasNextInt()) 
{
   choice = s.nextInt();
}

s.close();
Nach dem Login kopieren

Diese Änderung stellt sicher, dass nextInt() nur aufgerufen wird, wenn eine Ganzzahl zum Lesen verfügbar ist, wodurch der Fehler verhindert wird. Darüber hinaus empfiehlt es sich, den Scanner zu schließen, wenn er fertig ist, um Systemressourcen freizugeben.

Das obige ist der detaillierte Inhalt vonWie verhindert man „java.util.NoSuchElementException' bei Verwendung von Scanner.nextInt()?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage