Home  >  Article  >  Java  >  How to use the hasNext() method of the Scanner class to check if there is a next element in the user input

How to use the hasNext() method of the Scanner class to check if there is a next element in the user input

WBOY
WBOYOriginal
2023-07-24 21:46:471505browse

How to use the hasNext() method of the Scanner class to check whether there is a next element in the user input

In Java, the Scanner class is a commonly used tool class for reading from the standard input stream (System. in) to read user input. The Scanner class provides many methods for parsing different types of input, one of which is the hasNext() method, which is used to check whether there is a next element in the user input.

When we write a program that needs to accept user input, we often need to determine whether the user has completed input. In this case, we can use the hasNext() method to achieve this. The hasNext() method returns a boolean value. If there is another element in the user input, it returns true; otherwise it returns false.

The following is a sample code that demonstrates how to use the hasNext() method of the Scanner class to check whether there is a next element in the user input:

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();
    }
}

In the above sample code, we create Create a Scanner object to read user input. Within the loop, we use the hasNext() method to check if there is a next element in the user input. If there is another element, continue to execute the code in the loop body; if there is no next element, jump out of the loop.

For the convenience of demonstration, we use an if-else statement in the loop body to determine whether the user input is an integer or a string, and process it accordingly. If the user input is an integer, use the nextInt() method to read the integer and print it out; if the user input is a string, use the next() method to read the string and print it out.

It should be noted that after using the Scanner class to read user input, we should close the Scanner object in time to release resources. This can be achieved by calling the scanner.close() method.

In summary, using the hasNext() method of the Scanner class can conveniently check whether there is a next element in the user input. By properly applying this method, we can process user input and perform corresponding logical operations to improve the robustness of the program.

The above is the detailed content of How to use the hasNext() method of the Scanner class to check if there is a next element in the user input. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn