Sans plus tarder, je le fais juste!
? 1234567891011121314151617181920212223242526272829303132334353637IMPORT Java.util.scanner; classe publique test_hasnextint {/ ** * @param args * / public static void main (String [] args) {// TODO Méthode générée automatique Stub Scanner Sc = new Scanner (System.in); // À propos de la solution à la sortie de boucle infinie de l'élément ELSE après la chaîne de jugement Hasnextint Suivant; int i; while (true) {// scanner sc = new Scanner (System.in); // La première méthode consiste à y prendre le scanner. Chaque boucle crée un nouveau scanner. L'erreur d'entrée est juste invitée dans l'instruction ELSE. System.out.println ("Veuillez entrer un entier"); if (sc.hasnextint ()) {// Si en utilisant la méthode NextInt (), la marque suivante dans les informations d'entrée de scanner peut être interprétée comme une valeur int dans la cardinalité par défaut, alors vrai est renvoyé. i = sc.nextint (); // S'il est entré 22 33, il sortira deux fois System.out.println (i); } else {// next = sc.next (); // La deuxième méthode de traitement consiste à recevoir la valeur non intrante dans le cache de scanner // System.out.println ("Vous avez entré:" + next + ", veuillez vous réintégrer"); // Remarque: Suivant () recherche et renvoie la marque complète suivante de ce scanner, par exemple l'entrée: aa bb cc, alors aa sera reçu d'abord, puis la sortie aa // alors while (), et si vous jugez que le BB dans le cache n'est pas un entier, puis continuez à aller à l'instruction ELSE pour sortir BB. De même, il s'arrêtera après la sortie de CC. Si l'entrée est AA 22 cc, alors allez d'abord pour sortir AA, alors déterminez si 22 est un entier ou si l'instruction IF, et marchez à nouveau pour terminer la chaîne NextLine = sc.nextline (); // La troisième méthode, oubliez-le, acceptez simplement une ligne! System.out.println (Nextline); // Si vous entrez 22 AAA 333 CCC, la première fois que vous irez si vous recevez 22, //, lorsque vous rencontrerez AAA et marchez ESLS, vous recevrez la ligne entière après // Bien sûr, dans des circonstances normales, il n'y a pas de sc.hasnextint () comme un jugement, // NextLine () recevra la ligne entière, et c'est parce qu'un 22 est pris en charge par NextInt () ci-dessus. // Cela dépend donc de ce qu'il faut faire. Bien que le premier type crée un objet de scanner chaque fois que vous saisissez, il s'agit également d'une solution raisonnable! // Résumé: Comprenez le cache et vous comprendrez! }}}}}Ce qui précède est la solution au jugement Hasnextint dans Java qui vous a présenté par l'éditeur. J'espère que cela vous sera utile. Si vous avez des questions, veuillez me laisser un message et l'éditeur vous répondra à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!