Eingaben aus System.in in Java lesen
-
Eingabe lesen mit
System.in
in Java -
Eingaben lesen mit der Klasse
System.in
undBufferedReader
in Java -
Eingabe lesen mit der Methode
System.console()
in Java
Dieses Tutorial stellt vor, wie Benutzereingaben von der Konsole mit Hilfe von System.in
in Java gelesen werden.
Java bietet eine Low-Level-Stream-Klasse System
zum Lesen von Benutzereingaben, die einen Eingabestrom zum Lesen von Eingaben verwendet. Das System
ist eine Klasse in Java, die hilft, systembezogene Aufgaben auszuführen.
Wir können dies an die Klasse Scanner
übergeben und dann ihre Methoden verwenden; Wir können Benutzereingaben verschiedener Typen wie String
, int
, float
usw. erhalten. Lassen Sie uns dies anhand einiger Beispiele verstehen.
Eingabe lesen mit System.in
in Java
Die Verwendung von System.in
in einem Java-Code ist einfach; Übergeben Sie die Klasse im Konstruktor Scanner
und verwenden Sie die Methode nextLine()
. Diese Methode liest einen String und gibt ihn zurück.
Siehe das Beispiel unten.
import java.util.Scanner;
public class SimpleTesting {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter a value :");
String str = sc.nextLine();
System.out.println("User input: " + str);
}
}
Ausgabe:
Enter a value :
2
User input: 2
Eingaben lesen mit der Klasse System.in
und BufferedReader
in Java
Dies ist eine weitere Lösung zum Lesen von Benutzereingaben, bei der wir die Klasse BufferedReader
anstelle der Klasse Scanner
verwendet haben. Dieser Code erledigt die gleiche Aufgabe, und wir haben hier die Methode readLine()
verwendet, um die Daten zu lesen.
Diese Methode gehört zur Klasse BufferedReader
und gibt einen String zurück. Siehe das Beispiel unten.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class SimpleTesting {
public static void main(String[] args) throws IOException {
System.out.println("Enter a value :");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
System.out.println(str);
}
}
Ausgabe:
Enter a value :
sam
sam
Eingabe lesen mit der Methode System.console()
in Java
Die Java-Klasse System
stellt eine console()
-Methode bereit, um konsolenbezogene Aufgaben zu erledigen. Um Daten zu lesen, können wir diese Methode also auch verwenden.
Diese Methode gibt ein Konsolenobjekt zurück, mit dem wir die Methode readLine()
aufrufen können, um Daten zu lesen. Siehe das Beispiel unten.
import java.io.Console;
import java.io.IOException;
public class SimpleTesting {
public static void main(String[] args) throws IOException {
Console c = System.console();
System.out.println("Enter a value : ");
String str = c.readLine();
System.out.println(str);
}
}
Ausgabe:
Enter a value :
sam
sam
Die Java-Klasse Scanner
wird häufig zum Lesen von Benutzerdaten verwendet und stellt Methoden für jeden Datentyp bereit.
Mit diesen Methoden können wir bestimmte Daten auslesen. Einige von ihnen sind unten.
public int nextInt(); // reads integer input
public float nextFloat(); // reads decimal input
public String nextLine(); // reads string input
Im folgenden Beispiel haben wir diese Methoden verwendet, um eine andere Art von Benutzereingaben in Java zu lesen. Es wird Ihnen helfen, die Java-Konsole zu verstehen.
Siehe das Beispiel unten.
import java.io.IOException;
import java.util.Scanner;
public class SimpleTesting {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
System.out.println("Enter a string value : ");
String str = sc.nextLine();
System.out.println(str);
System.out.println("Enter an int value : ");
int a = sc.nextInt();
System.out.println(a);
System.out.println("Enter a float value : ");
float f = sc.nextFloat();
System.out.println(f);
}
}
Ausgabe:
Enter a string value :
string
string
Enter an int value :
23
23
Enter a float value :
34
34.0