Comment obtenir des données d'utilisateur en Java
-
Scannerpour obtenir les données de l’utilisateur en Java -
BufferedReaderpour 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