Bonjour,
Voici mon premier « tuto » ou « exemple » en java (enfin prenez le comme vous voulez =P). Il peux aussi être utile pour les personnes rencontrant l’erreur java.util.InputMismatchException car : grâce a un try/catch ce bout de code montre comment contourner l’erreur.
Il s’agit ici d’un bout de code qui permet de demander a l’utilisateur de saisir un chiffre (un Int dans ce cas ci).
Et si l’utilisateur ne saisit pas un chiffre (Par exemple des lettres ou des caractères spéciaux), il se voit re-demandé de saisir un chiffre correct.
Cela est donc très utile quand dans votre programme vous désirez obtenir des chiffre de la part de l’utilisateur, mais ne voulez pas que si il se trompe (ou s’amuse a rentrer n’importe quoi) le programme se plante.
Il y a peut être plus simple 😉 n’hésitez pas à m’en faire part, mais cette solution est très fonctionnelle.
Ps : Désolé pour cette mise en page désastreuse =S wordpress a ses défauts …
Pps : Ce bout de code s’adresse a des personnes ayant déjà approché de loin le code java, des tutos extrêmement simple verront le jour prochainement ;).
package java-saisiedechiffre;
import java.util.Scanner;
/**
*
* @author mknightofwest
*/
public class Main {/**
* @param args the command line arguments
*/
public static void main(String[] args) {// initialisation des variables
int chiffre = 0 ;
boolean bsaisie = false ;System.out.println(« Veuillez saisir un chiffre : ») ;
do {
Scanner sc = new Scanner(System.in); // saisie par l’utilisateur + déclaration du scanner
try { // aucune erreur
chiffre = sc.nextInt(); // la variable prend le chiffre saisi
bsaisie = true ; // bsaisie passe a l’état true, ce qui permettra de sortir de la boucle} catch (java.util.InputMismatchException e) { // erreur du type java.util.InputMismatchException (ce n’est pas un int qui est saisi)
System.out.println(« Vous avez inséré un chiffre incorrect, ré-essayez : ») ;}
sc.reset() ; //remise a zéro du scanner (sinon boucle infinie), il est peux être possible de le faire avec un sc.close()
} while(bsaisie == false) ; //fin de boucle si bsaisie = true
System.out.println(« Vous avez saisi : » +chiffre) ;
}
}
C’est sympa ce bout de code, mais plus d’explications serait utiles pour les débutants.
Je crois que ça peut fonctionner sans le Package saisie de chiffre.