Prüfen, ob eine Eingabe Integer ist in Java
-
Prüfen, ob eine Eingabe eine Ganzzahl ist mit der Methode
hasNextInt
in Java -
Überprüfen Sie mit dem Block
try...catch
, ob die Zahl ganzzahlig ist
Das Problem besagt, dass wir überprüfen müssen, ob die Eingabe in der Java-Sprache eine Ganzzahl ist.
Prüfen, ob eine Eingabe eine Ganzzahl ist mit der Methode hasNextInt
in Java
Das System
ist eine Klasse mit statischen Methoden und Feldern. Wir können das Objekt niemals instanziieren. Das Objekt in
ist der Standardeingabestream. Dieser Stream ist bereits geöffnet und bereit, Eingabedaten bereitzustellen.
Die hasNextMethod
ist in der Klasse Scanner
vorhanden und gibt true zurück, wenn das nächste Token in dieser Scannereingabe als int
-Wert ausgewertet werden kann. Die Methode löst IllegalStateException
aus, wenn das Scannerobjekt geschlossen ist.
package checkInputIsInt;
import java.util.Scanner;
public class CheckIntegerInput {
public static void main(String[] args) {
System.out.print("Enter the number: ");
Scanner scanner = new Scanner(System.in);
if (scanner.hasNextInt()) {
System.out.println("The number is an integer");
} else {
System.out.println("The number is not an integer");
}
}
}
In der ersten Zeile wird die Eingabe vom Benutzer über die Konsoleneingabe übernommen. Da der eingegebene Text eine Zahl ist, ist die Zahl eine Ganzzahl, die gedruckt wird.
Enter the number: 1
The number is an integer
Da der eingegebene Text keine Zahl ist, wird die else-Bedingungsanweisung gedruckt.
Enter the number: Hi
The number is not an integer
Überprüfen Sie mit dem Block try...catch
, ob die Zahl ganzzahlig ist
Im folgenden Codeblock verwenden wir die Scannerklasse, um Benutzereingaben von der Konsole zu übernehmen. Die Klasse Scanner
hat die Methode next
. Es wird NoSuchElementException
ausgelöst, wenn keine Token mehr verfügbar sind, und IllegalStateException
, wenn dieser Scanner geschlossen ist.
public class CheckIntegerInput {
public static void main(String[] args) {
System.out.print("Enter the number : ");
Scanner scanner = new Scanner(System.in);
try {
Integer.parseInt(scanner.next());
System.out.println("The number is an integer");
} catch (NumberFormatException ex) {
System.out.println("The number is not an integer ");
}
}
Der obige Code zeigt die Anweisung im try-Block an, wenn die Zahl eine Ganzzahl ist. Die im catch-Block vorhandene Anweisung wird ausgeführt, wenn die Methode eine Exception
auslöst, und NumberFormatException
, wenn eine Zeichenkette nicht in einen der numerischen Typen konvertiert werden kann.
Die Ausgabe des obigen Codes ähnelt der im ersten oben angegebenen Beispielcode.
Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.
LinkedIn