Wie man Benutzereingaben in Java erhält
-
Scanner
zum Erhalten von Benutzereingaben in Java -
BufferedReader
zum Abrufen von Benutzereingaben in Java
In diesem Artikel werden wir den besten Ansatz diskutieren, um Benutzereingaben in Java zu erhalten. Obwohl es viele Möglichkeiten gibt, dies zu tun, sind einige dieser Methoden bereits veraltet, und daher werden wir sie vermeiden.
Scanner
zum Erhalten von Benutzereingaben in Java
Wir können den Scanner
benutzen, um unser Ziel zu erreichen. Wir müssen ein Objekt der Klasse erstellen und System.in
an seinen Konstruktor übergeben, da dieser einen InputStream
öffnet, um Eingaben vom Benutzer zu erhalten.
Der nächste Schritt besteht darin, das Objekt Scanner
zu verwenden und eine der folgenden Methoden aufzurufen. Jede Methode nimmt den Eingabewert verschiedener Datentypen entgegen.
Methode | Beschreibung |
---|---|
next() |
String-Wert |
nextInt() |
Ganzzahliger Wert |
nextByte() |
Byte-Wert |
nextLong() |
Langer Wert |
nextFloat() |
Gleitkommazahl |
nextDouble() |
Doppelter Wert |
In unserem Beispiel unten werden wir die nextInt()
Methode verwenden, die ganzzahlige Werte annimmt.
Beispiel:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner inputReader = new Scanner(System.in);
System.out.println("Enter a number: ");
int number = inputReader.nextInt();
System.out.println("Your entered number was: " + number);
}
}
Ausgabe:
Enter a number:
454
Your entered number was: 454
BufferedReader
zum Abrufen von Benutzereingaben in Java
Wir haben eine weitere Klasse, die die Eingaben des Benutzers erhalten könnte. BufferedReader
verwendet Zeichenströme, um Text aus der Eingabe zu lesen, während Scanner
verwendet werden kann, wenn wir die primitive Art der Eingabe haben.
Das bedeutet, dass sie keine Methoden wie nextInt()
in der Klasse BufferedReader
hat, sondern eine readLine()
Methode, die die Eingabe entgegennimmt, damit wir sie später analysieren können.
Im folgenden Beispiel nehmen wir die Eingabe als int
. Wir müssen die Eingabe lesen und sie dann mit Integer.parseInt(String)
in den Typ int
parsen. Wir sollten die Anweisungen von einem Try-Catch-Block umgeben, da IOException erscheinen kann, wenn keine externen Eingabegeräte vorhanden sind.
Beispiel:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
try {
System.out.println("Please enter a number: ");
String s = br.readLine();
int i = Integer.parseInt(s);
System.out.println("Your entered number was: " + i);
} catch (IOException e) {
e.printStackTrace();
}
br.close();
}
}
Ausgabe:
Please enter a number:
454
Your entered number was: 454
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn