5.11 Lecture de l'entrée utilisateur
Dans cette vidéo, nous allons créer un objet Scanner qui va permettre à un utilisateur de saisir du texte au clavier. L'utilisateur entrera par exemple son nom et son année de naissance, et nous les afficherons à l'écran.
Après avoir créé un nouveau projet, on déclare un Scanner. Il faut bien penser à importer la classe java.util.Scanner en haut du fichier. Ensuite, on écrit Scanner scanner = new Scanner(System.in);. Scanner est l'une des classes intégrées de Java, qui permet de lire les entrées utilisateur. Le mot-clé new crée une nouvelle instance de la classe Scanner.
Lire un nom puis une année de naissance
On affiche d'abord « Entrez votre nom : », puis on lit la saisie avec String name = scanner.nextLine();. La méthode nextLine() met le programme en attente : dès que l'utilisateur tape un texte et appuie sur la touche Entrée, la valeur saisie est affectée à la variable name. On peut alors afficher « Votre nom est : » suivi du nom.
Scanner scanner = new Scanner(System.in);
System.out.print("Entrez votre nom : ");
String name = scanner.nextLine();
System.out.print("Entrez votre annee de naissance : ");
int year = scanner.nextInt();
int age = 2021 - year;
System.out.println("Votre nom est : " + name + " et vous avez " + age + " ans");
scanner.close();
Pour l'année de naissance, on utilise scanner.nextInt() qui attend cette fois un entier. On calcule ensuite l'âge en faisant 2021 - year et on affiche un message combinant le nom et l'âge. Enfin, on referme le scanner avec scanner.close() pour libérer la ressource, puis on exécute le programme et l'on saisit nos informations dans la console. À la prochaine !
En résumé
Cette leçon explique comment lire les entrées utilisateur en Java grâce à la classe Scanner. Vous apprendrez à importer la classe Scanner, créer une instance, puis utiliser les méthodes nextLine() et nextInt() pour capturer du texte et des nombres. Un exemple concret montre comment lire le nom et l'année de naissance d'un utilisateur, puis calculer et afficher son âge.
Points clés
- La classe Scanner est une classe intégrée en Java importée avec 'new Scanner(System.in)' pour lire les entrées utilisateur
- La méthode nextLine() capture une ligne de texte entière jusqu'à la pression d'Entrée
- La méthode nextInt() capture un nombre entier; les calculs mathématiques peuvent être appliqués aux données captées
- Il est recommandé de fermer le scanner avec scanner.close() après utilisation pour libérer les ressources
- Les données saisies par l'utilisateur peuvent être stockées dans des variables et réutilisées pour des affichages ou calculs
Questions fréquentes
Comment importer et créer une instance de Scanner en Java?
Écrivez 'Scanner scanner = new Scanner(System.in);' avec un S majuscule pour la classe. System.in permet au scanner de lire à partir de l'entrée standard (clavier).
Quelle est la différence entre nextLine() et nextInt()?
nextLine() capture une ligne complète de texte sous forme de chaîne, tandis que nextInt() capture uniquement un nombre entier. Utilisez nextLine() pour les noms et nextInt() pour les chiffres.
Pourquoi faut-il fermer le scanner?
scanner.close() ferme la ressource et libère la mémoire. C'est une bonne pratique pour éviter les fuites de ressources, surtout dans les applications complexes.