Connexion




Les bases du Java

Par Arthur Martineau


<-- Les conditions et les boucles Les entrées/sorties en Java Les tableaux en Java -->


Les entrées/sorties en Java


Depuis le début de ce cours, je vous parle de programme. Pourtant je suis encore loin de vous avoir donné les outils pour réaliser un programme.

Prenons le programme Word par exemple, son utilisation est basée sur le fait que lorsqu'on appuie sur une touche, le programme est capable de le savoir et d'afficher le caractère correspondant à la touche sur laquelle on vient d'appuyer.

Et bien il est temps d'apprendre comment faire ces deux actions en Java.

 

Commençons par les sorties et donc l'affichage :

Dans quasiment tout vos futurs programmes, vous aurez besoin d'afficher quelque chose. Nous allons apprendre à faire cela mainenant.

Mais si vous avez une bonne mémoire, nous avons vu ca, et ceux dès la première partie.

 

Rappellez-vous, je vous avez fait écrire System.out.print("Hello World !"); qui avait permis d'afficher Hello World ! sur la console d'Eclipse.

Vous connaissez donc déjà la syntaxe permettant d'afficher du texte : System.out.print("mon texte a afficher");

Elle est composée d'une classe appellée System qui est une classe native permettant d'utiliser l'entrée et la sortie standard (vous verez qu'on l'utilisera aussi pour récupérer les saisies clavier).

Mais aussi de l'objet out qui appartient à la classe System et qui permet de gérer la sortie standard.

Et pour finir la méthode print qui permet d'écrire le texte passé en paramètre (entre les parenthèses).

 

Il existe aussi une autre méthode pour afficher son texte, la méthode println qui permet d'ajouter un retour à la ligne à la fin de l'affichage de la chaîne de caractères. L'ensemble s'écrira donc  System.out.println("texte à afficher"); et aura un résultat parfaitement identique à System.out.print("texte à afficher\n");.

Car vous l'aurez peut être compris \n permet de faire un retour à la ligne.

 

Maintenant, imaginons que l'on souhaite afficher le contenu d'une variable de notre programme. Quel va être la synthaxe a adopté ?

Et bien il va falloir utiliser ce qu'on appelle un opérateur de concaténation qui permettra de mélanger du texte et des variables.

De cette façon :

Cette exemple met en évidence l'utilisation de l'opérateur de concaténation, n'hésitez pas à le compiler afin de voir le résultat. Comme on peut le voir, le texte brut doit être transmis en paramètres (entre parenthèses) alors que les variables non. Mais pour que les deux forment un ensemble, il faut utiliser l'opérateur de concaténation "+".

 

Nous pouvons maintenant enchainer avec les entrées clavier :

Dans une nouvelle classe, ajoutez la ligne suivante dans la méthode main.

Avec cette ligne, vous aller instancier un objet Scanner en utilisant l'entrée standard System.in. Vous ne verez ce que signifie instancier que dans le cours sur l'orienté objet concernant le Java, considérez pour le moment qu'on crée une variable sc de type Scanner.

Normalement, Eclipse vous signale une erreur en sous-lignant Scanner. C'est dut au fait qu'il ne sait pas à quoi Scanner correspond.

C'est pourquoi nous allons maintenant lui indiquer en ajoutant import java.util.Scanner; au début de notre programme.

 

Mais pour ça, je désire vous montrez une méthode particulière. Car il est possible d'ajouter cette ligne sans utiliser votre clavier. Pour cela il faut faire un clic gauche sur la croix située à gauche de votre ligne et de double cliquer sur la ligne Import 'Scanner' (java.util).

Faites le et vérifier en haut de votre classe qu'une ligne avec java.util.Scanner; est bien apparue.

 

Mais alors qu'est-ce que signifie cette nouvelle ligne que l'on vient d'ajouter ?

Cette ligne appelle un package, ici le package java.util et plus précisément la classe Scanner. Nous verrons dans la suite de notre apprentissage du Java ce qu'est un package.

Rajoutez maintenant ces 3 lignes en dessous de celle de l'instance du Scanner :

Vous avez surement compris ce que ce bout de code est censé effectuer. Dans un premier temps, il va écrire une phrase en demandant de saisir un mot au clavier. Puis il va récupérer ce mot à l'aide cette instruction : String mot = sc.nextLine();. Pour finir par écrire le mot qu'il aura récupéré de votre saisie.

Dans la deuxième ligne, on récupère l'ensemble de la ligne qui va être saisie entre les deux affichages dans la variable mot. Cela en utilisant une méthode de récupération de données, nextLine, qui est la méthode pour récupérer une donnée sous le format String.

Il existe une méthode pour chaque format, sauf le char. Hormis pour le type String où c'est nextLine ; la syntaxe est similaire pour chacun des formats puisque les autres méthodes de récupération de données se forme ainsi :

nextType();

Pour le type int on aura donc la méthode nextInt();.

Avant de passer au chapitres suivant, je vous propose de tester le code que je vous ai donné et d'essayer par vous même d'utiliser les autres méthodes.



<-- Les conditions et les boucles Les entrées/sorties en Java Les tableaux en Java -->