Dans le but d'améliorer la robustesse du programme, les utilisateurs sont confrontés à des défis pour restreindre la saisie à des valeurs entières valides et gérer les entrées non numériques. Une bibliothèque populaire, Scanner, offre une solution à ces obstacles.
Scanner fournit la méthode hasNextInt(), qui vérifie si l'entrée à venir peut être interprété comme un entier. Cette méthode reste statique, ce qui implique qu'elle n'avance au-delà d'aucune entrée.
L'incorporation de hasNextInt() permet une solution élégante :
Scanner sc = new Scanner(System.in); System.out.print("Enter number 1: "); while (!sc.hasNextInt()) sc.next(); // Skips non-numeric input int num1 = sc.nextInt(); int num2; System.out.print("Enter number 2: "); do { while (!sc.hasNextInt()) sc.next(); // Skips non-numeric input num2 = sc.nextInt(); } while (num2 < num1); // Enforces num2 being greater than num1
Étant donné que les méthodes hasNextXXX restent statiques, il est nécessaire d'appeler next() pour éliminer tout "déchet" provenant d'une entrée non valide.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!