Comment obtenir des données d'utilisateur en Java
-
Scanner
pour obtenir les données de l’utilisateur en Java -
BufferedReader
pour obtenir l’entrée de l’utilisateur en Java
Dans cet article, nous discuterons de la meilleure approche pour obtenir des données de l’utilisateur en Java. Bien qu’il existe de nombreuses façons de le faire, certaines de ces méthodes sont déjà obsolètes, et nous les éviterons donc.
Scanner
pour obtenir les données de l’utilisateur en Java
Nous pouvons utiliser le Scanner
pour atteindre notre objectif. Nous devons créer un objet de la classe et passer System.in
à son constructeur parce qu’il ouvre un InputStream
pour obtenir des informations de l’utilisateur.
L’étape suivante consiste à utiliser l’objet Scanner
et à appeler l’une des méthodes suivantes. Chaque méthode prend la valeur d’entrée de différents types de données.
Méthode | Description |
---|---|
next() |
Valeur de la chaîne |
nextInt() |
Valeur entière |
nextByte() |
Valeur de l’octet |
nextLong() |
Valeur longue |
nextFloat() |
Valeur float |
nextDouble() |
Double valeur |
Dans notre exemple ci-dessous, nous utiliserons la méthode nextInt()
, qui prend des valeurs entières.
Exemple :
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);
}
}
Production :
Enter a number:
454
Your entered number was: 454
BufferedReader
pour obtenir l’entrée de l’utilisateur en Java
Nous avons une autre classe qui pourrait obtenir les informations de l’utilisateur. BufferedReader
utilise des flux de caractères pour lire le texte de l’entrée, tandis que Scanner
peut être utilisé lorsque nous avons le type d’entrée primitive.
Cela signifie qu’il n’y a pas de méthodes comme nextInt()
dans la classe BufferedReader
, mais il y a une méthode readLine()
qui prend les données d’entrée et les analyse plus tard.
Dans l’exemple ci-dessous, nous prenons l’entrée comme une int
. Nous devons lire l’entrée et ensuite l’analyser dans le type int
en utilisant Integer.parseInt(String)
. Nous devons entourer les instructions par un bloc try-catch
car une IOException peut apparaître s’il n’y a pas de périphériques d’entrée externes.
Exemple :
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();
}
}
Production :
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