Maison >Java >javaDidacticiel >Comment utiliser la méthode hasNext() de la classe Scanner pour vérifier s'il y a un élément suivant dans l'entrée utilisateur

Comment utiliser la méthode hasNext() de la classe Scanner pour vérifier s'il y a un élément suivant dans l'entrée utilisateur

WBOY
WBOYoriginal
2023-07-24 21:46:471548parcourir

Comment utiliser la méthode hasNext() de la classe Scanner pour vérifier s'il y a un élément suivant dans l'entrée utilisateur

En Java, la classe Scanner est une classe d'outils couramment utilisée pour lire les utilisateurs à partir du flux d'entrée standard (System. dans) entrez. La classe Scanner fournit de nombreuses méthodes pour analyser différents types d'entrée, dont la méthode hasNext(), qui est utilisée pour vérifier s'il existe un élément suivant dans l'entrée utilisateur.

Lorsque nous écrivons un programme qui doit accepter les entrées de l'utilisateur, nous devons souvent déterminer si l'utilisateur a terminé la saisie. Dans ce cas, nous pouvons utiliser la méthode hasNext() pour y parvenir. La méthode hasNext() renvoie une valeur booléenne S'il y a un autre élément dans l'entrée utilisateur, elle renvoie true sinon elle renvoie false ;

Voici un exemple de code qui montre comment utiliser la méthode hasNext() de la classe Scanner pour vérifier s'il y a un élément suivant dans l'entrée utilisateur :

import java.util.Scanner;

public class ScannerDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入一些整数,用空格分隔:");
        while (scanner.hasNext()) {
            if (scanner.hasNextInt()) {  // 检查用户输入的下一个元素是否是整数
                int num = scanner.nextInt();  // 如果是整数,则读取该整数
                System.out.println("您输入的整数是:" + num);
            } else {
                String str = scanner.next();  // 如果不是整数,则读取该字符串
                System.out.println("您输入的字符串是:" + str);
            }
        }

        scanner.close();
    }
}

Dans l'exemple de code ci-dessus, nous créons un objet Scanner à lire l’entrée de l’utilisateur. Dans la boucle, nous utilisons la méthode hasNext() pour vérifier s'il y a un élément suivant dans l'entrée utilisateur. S'il y a un élément suivant, continuez à exécuter le code dans le corps de la boucle ; s'il n'y a pas d'élément suivant, sortez de la boucle.

Pour faciliter la démonstration, nous utilisons une instruction if-else dans le corps de la boucle pour déterminer si l'entrée utilisateur est un entier ou une chaîne, et la traitons en conséquence. Si l'entrée utilisateur est un entier, utilisez la méthode nextInt() pour lire l'entier et l'imprimer ; si l'entrée utilisateur est une chaîne, utilisez la méthode next() pour lire la chaîne et l'imprimer.

Il convient de noter qu'après avoir utilisé la classe Scanner pour lire les entrées de l'utilisateur, nous devons fermer l'objet Scanner à temps pour libérer des ressources. Ceci peut être réalisé en appelant la méthode scanner.close().

En résumé, l'utilisation de la méthode hasNext() de la classe Scanner peut facilement vérifier s'il y a un élément suivant dans l'entrée utilisateur. En appliquant correctement cette méthode, nous pouvons traiter les entrées de l'utilisateur et effectuer les opérations logiques correspondantes pour améliorer la robustesse du programme.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn