Lire l'entrée de System.in en Java
-
Lire l’entrée en utilisant
System.in
en Java -
Lire l’entrée à l’aide des classes
System.in
etBufferedReader
en Java -
Lire l’entrée à l’aide de la méthode
System.console()
en Java
Ce didacticiel explique comment lire les entrées utilisateur à partir de la console à l’aide de System.in
en Java.
Java fournit une classe de Stream de bas niveau System
pour lire l’entrée utilisateur, qui utilise un Stream d’entrée pour lire l’entrée. Le System
est une classe en Java qui aide à effectuer des tâches liées au système.
Nous pouvons passer ceci à la classe Scanner
, puis en utilisant ses méthodes ; nous pouvons obtenir des entrées utilisateur de plusieurs types tels que String
, int
, float
, etc. Comprenons par quelques exemples.
Lire l’entrée en utilisant System.in
en Java
Utiliser le System.in
dans un code Java est simple ; passez la classe dans le constructeur Scanner
et utilisez la méthode nextLine()
. Cette méthode lit et renvoie une chaîne.
Voir l’exemple ci-dessous.
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);
}
}
Production :
Enter a value :
2
User input: 2
Lire l’entrée à l’aide des classes System.in
et BufferedReader
en Java
Il s’agit d’une autre solution pour lire les entrées utilisateur où nous avons utilisé la classe BufferedReader
plutôt que la classe Scanner
. Ce code fait la même tâche, et nous avons utilisé la méthode readLine()
ici pour lire les données.
Cette méthode appartient à la classe BufferedReader
et renvoie une chaîne. Voir l’exemple ci-dessous.
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);
}
}
Production :
Enter a value :
sam
sam
Lire l’entrée à l’aide de la méthode System.console()
en Java
La classe Java System
fournit une méthode console()
pour gérer les tâches liées à la console. Donc, pour lire les données, nous pouvons également utiliser cette méthode.
Cette méthode renvoie un objet console par lequel nous pouvons appeler la méthode readLine()
pour lire les données. Voir l’exemple ci-dessous.
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);
}
}
Production :
Enter a value :
sam
sam
La classe Java Scanner
est couramment utilisée pour lire les données de l’utilisateur et fournit des méthodes pour chaque type de données.
Nous pouvons utiliser ces méthodes pour lire des données spécifiques. Certains d’entre eux sont ci-dessous.
public int nextInt(); // reads integer input
public float nextFloat(); // reads decimal input
public String nextLine(); // reads string input
Dans l’exemple ci-dessous, nous avons utilisé ces méthodes pour lire un type différent d’entrée utilisateur en Java. Cela vous aidera à comprendre la console Java.
Voir l’exemple ci-dessous.
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);
}
}
Production :
Enter a string value :
string
string
Enter an int value :
23
23
Enter a float value :
34
34.0