Il existe de nombreuses situations où nous devons prendre l’entrée de l’utilisateur selon son exigence. Dans de tels cas, nous ne pouvons pas prendre les entrées dans notre programme plutôt, nous devons prendre l’entrée de la console à l’exécution du programme. Java propose différentes manières de prendre des données en entrée et de fournir des données en sortie sur la console. Dans cet article, nous allons apprendre comment prendre les entrées de la console de l’utilisateur en utilisant la console Java. Nous allons apprendre chaque façon d’utiliser une console pour l’entrée et la sortie de l’utilisateur en Java avec l’aide d’exemples.

Donc, commençons à explorer les différentes façons de lire l’entrée de la console Java.

Java Console Class

Vous tenir au courant des dernières tendances technologiques, Rejoignez TechVidvan sur Telegram

Console Java

Il existe trois façons de prendre les entrées de la console en Java

  1. Utilisant la classe Java BufferedReader
  2. Par le biais de la classe Java. Scanner class
  3. Utiliser la classe Java Console

Utiliser la classe BufferedReader

L’utilisation de la classe BufferedReader est la méthode classique de prise d’entrée depuis la console. Java a introduit cette technique depuis Java 1. La classe BufferedClass lit les données ligne par ligne grâce à la méthode readLine(). Cette classe enveloppe le System.in avec un InputStreamReader.

Pour utiliser ces classes, nous devons utiliser le package java.io. Voyons un exemple pour comprendre cette méthode de lecture des entrées de la console.

Code pour lire l’entrée en utilisant la classe BufferedReader:

package com.techvidvan.consoleinput; //Java program to demonstrate BufferedReaderimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class BufferedReaderDemo{ public static void main(String args) throws IOException { InputStreamReader input = new InputStreamReader(System.in); //Taking the input data using the BufferedReader class BufferedReader reader = new BufferedReader(input); // Reading data using readLine System.out.println("Please enter the input:"); String name = reader.readLine(); // Printing the read line System.out.println("You entered: "); System.out.println(name); }}

Sortie:

Veuillez saisir l’entrée:
Tutoriel Java deTechVidvan
Vous avez saisi :
Tutoriel Java deTechVidvan

Utilisation de la classe BufferedReader jusqu’à ce que l’utilisateur écrive « over »

Nous pouvons également utiliser la classe BufferedReader pour prendre l’entrée de l’utilisateur jusqu’à ce que l’utilisateur tape n’importe quelle chaîne qui correspond à notre chaîne de test. Prenons un exemple pour comprendre cela.

Code pour comprendre cet exemple:

package com.techvidvan.consoleinput;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class BufferedReaderDemo{ public static void main(String args) throws IOException { InputStreamReader input = new InputStreamReader(System.in); //Taking the input data using the BufferedReader class BufferedReader reader = new BufferedReader(input); String name = ""; System.out.println("Enter the names and when you want to stop entering the name, type Over"); while(!name.equals("Over")) { System.out.println("Enter the name: "); // Reading data using readLine() method name = reader.readLine(); // Printing the read line System.out.println("The entered name is: "+name); if(name.contentEquals("Over")) System.out.println("You entered Over!!"); } reader.close(); input.close(); } }

Sortie:

Entrez les noms et lorsque vous voulez arrêter d’entrer le nom, tapez Over
Entrez le nom:
Avina
Le nom entré est : Avina
Entrez le nom:
Neha
Le nom entré est : Neha
Entrez le nom:
Ravi
Le nom entré est : Ravi
Entrez le nom:
Over
Le nom entré est : Over
Vous avez saisi Over !!

Note : La méthode readLine() est utilisée pour prendre l’entrée String de l’utilisateur. Si vous voulez lire les autres types, nous pouvons utiliser les méthodes comme

  • Interger.parseInt() : pour lire les valeurs int
  • Double.parseDouble() : pour lire les valeurs double
  • Float.parseFloat() : pour lire les valeurs float

Pour lire plusieurs valeurs, nous utilisons la méthode split().

Utilisation de la classe Scanner

La deuxième façon de prendre les entrées de l’utilisateur est d’utiliser la classe java.util.Scanner. C’est probablement le meilleur choix pour prendre l’entrée de la console de l’utilisateur. Cette classe lit l’entrée de l’utilisateur dans la console ou la ligne de commande. L’autre utilisation de la classe Scanner est d’analyser les chaînes de caractères et les types primitifs à l’aide d’expressions régulières java.

La classe Scanner est présente dans le paquet java.util. Cette classe obtient l’entrée de System.in (flux d’entrée standard).

Deuxièmement, nous utilisons également cette classe Console pour lire une entrée de type mot de passe sans afficher les caractères du mot de passe d’entrée sur la console.

Syntaxe d’utilisation de la classe Scanner:

Scanner scanner = new Scanner(System.in);

Avantages

  • La classe Scanner fournit des méthodes utiles comme nextInt(), nextDouble(), nextFloat(), etc, pour analyser les types de données primitifs.
  • La classe Scanner utilise des expressions régulières et nous pouvons utiliser ces expressions régulières pour trouver des tokens.

Inconvénients

  • Les méthodes de la classe Scanner pour lire les valeurs ne sont pas synchronisées

Types d’entrée de la classe Scanner

Pour lire les valeurs de divers types de données, la classe Scanner fournit plusieurs méthodes. Le tableau suivant présente ces méthodes :

.

.

Méthode Description
nextBoolean() Cette méthode lit une valeur booléenne à l’utilisateur
nextByte() Cette méthode lit une valeur d’octet à l’utilisateur. méthode lit une valeur d’octet de l’utilisateur nextDouble() Cette méthode lit une valeur de double de l’utilisateur nextFloat() Cette méthode lit une valeur de flottant de l’utilisateur
nextInt() Cette méthode lit une valeur int de l’utilisateur
nextLine() Cette méthode lit une valeur String de l’utilisateur
nextLong() Cette méthode lit une valeur longue de l’utilisateur
nextShort() Cette méthode lit une valeur courte de l’utilisateur

Code pour prendre une entrée de l’utilisateur en utilisant la classe Scanner :

package com.techvidvan.consoleinput;import java.util.Scanner;public class ScannerClassDemo{ // Java program to understand the use of Scanner in Java public static void main(String args) { // Using Scanner for Getting Input from User Scanner sc = new Scanner(System.in); System.out.println("Enter a string"); String string = sc.nextLine(); System.out.println("You entered string: " +string); System.out.println("Enter a number"); int num = sc.nextInt(); System.out.println("You entered integer: " +num); System.out.println("Enter a float number"); float fnum = sc.nextFloat(); System.out.println("You entered float: " +fnum); }}

Sortie:

Entrez une chaîne de caractères
TechVidvan
Vous avez entré une chaîne de caractères : TechVidvan
Entrez un nombre
5
Vous avez entré un nombre entier : 5
Entrez un nombre flottant
87,4
Vous avez entré le flottant : 87,4

Utilisation de la classe Java Console

La classe Java Console est la troisième technique pour prendre les entrées de l’utilisateur à travers la console. La classe Console a été introduite depuis la version 1.5 de Java. Cette classe est présente dans le paquet java.io. Il existe plusieurs méthodes dans la classe Console qui permettent de lire les textes d’entrée et les mots de passe depuis la console, sans les afficher à l’écran. Deuxièmement, nous utilisons également cette classe Console pour lire les entrées de type mot de passe sans afficher les caractères du mot de passe d’entrée sur la console.

Avantages

  • Lecture du mot de passe sans afficher les caractères du mot de passe sur la console.
  • Les méthodes de lecture de la classe console sont synchronisées.
  • Nous pouvons également utiliser la syntaxe de la chaîne de format avec la classe console

Inconvénients

  • Il ne fonctionne pas dans un environnement non interactif (comme dans un IDE).

Méthodes de la classe Java Console

Le tableau suivant présente différentes méthodes de la classe Java Console :

Tr>

Méthode Description
Reader reader() Cette méthode obtient l’objet de la classe Reader lié à la console.
String readLine() Cette méthode lit une seule ligne de texte depuis la console. String readLine(String fmt, Object… args) Cette méthode fournit une invite formatée avant de lire le texte d’entrée depuis la console.
char readPassword() Il est utilisé pour lire un mot de passe qui est visible sur l’écran de la console.
char readPassword(String fmt, Object… args) Cette méthode fournit une invite formatée avant de lire le mot de passe qui n’est pas visible sur l’écran de la console. Console format(String fmt, Object… args) Cette méthode affiche une chaîne formatée sur le flux de sortie de la console. Console printf(String format, Object… args) Cette méthode imprime une chaîne de caractères sur le flux de sortie de la console. PrintWriter writer() Cette méthode permet d’obtenir l’objet de la classe PrintWriter.
Void flush() Cette méthode est utilisée pour vider la console.

Code pour prendre l’entrée de l’utilisateur en utilisant la classe Console:

package com.techvidvan.consoleinput;public class Sample { public static void main(String args) { // Using Console to input data from user System.out.println("Enter something"); String name = System.console().readLine(); System.out.println("You entered: " +name); }}

Sortie :

Exemple de classe de console Java

Exemple de console Java pour lire le mot de passe

import java.io.Console; class Sample{ public static void main(String args) { Console c=System.console(); System.out.println("Enter password: "); char ch=c.readPassword(); String pass=String.valueOf(ch);//converting char array into string System.out.println("Password is: "+pass); } } 

Sortie :

Lire l'entrée de la console java

Sommaire

Dans cet article Java, nous avons vu trois façons différentes d’obtenir l’entrée de l’utilisateur, puis de la traiter et d’afficher la sortie souhaitée à l’utilisateur sur la console. Nous pouvons utiliser l’une des trois classes pour obtenir l’entrée de la console de l’utilisateur qui sont la classe BufferedReader, la classe Scanner et la classe Java Console. Il existe plusieurs méthodes pour lire l’entrée de l’utilisateur. Nous avons discuté de ces trois façons avec l’exemple.

Merci d’avoir lu notre article. Nous espérons que vous l’avez apprécié. Faites-le partager sur les médias sociaux.

Keep Learning 🙂

.

Catégories : Articles

0 commentaire

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *