江明涛的博客
Java中如何使用while循环来进行输入验证?
Java中如何使用while循环来进行输入验证?

Java中如何使用while循环来进行输入验证?

在Java中,我们经常需要对用户输入的数据进行验证,以确保输入的数据符合预期的要求。使用while循环可以轻松地实现输入验证的功能。

一种常见的输入验证需求是要求用户输入一个介于特定范围内的整数。下面是一个示例代码,演示了如何使用while循环来实现这个功能:

import java.util.Scanner;
public class InputValidation {
    public static void main(String[] args) {
        int min = 1;
        int max = 100;
        Scanner scanner = new Scanner(System.in);
        int number;
        System.out.println("请输入一个介于 " + min + " 和 " + max + " 之间的整数:");
        while (true) {
            if (scanner.hasNextInt()) {
                number = scanner.nextInt();
                if (number >= min && number <= max) {
                    break;
                } else {
                    System.out.println("输入不符合要求,请重新输入:");
                }
            } else {
                System.out.println("输入不符合要求,请重新输入:");
                scanner.next();
            }
        }
        System.out.println("您输入的数字是:" + number);
    }
}

在上述示例中,我们首先定义了一个范围(min和max),然后创建了一个Scanner对象来读取用户输入。接下来,我们进入了一个while循环,该循环将一直执行,直到用户输入了一个符合要求的整数。

首先,我们使用scanner.hasNextInt()来判断用户输入是否为整数。如果是整数,我们将使用scanner.nextInt()将输入的值存储到number变量中。然后,我们通过if语句来检查number是否在范围内。如果是,我们使用break语句跳出循环;否则,我们输出错误提示信息,并要求用户重新输入。

如果用户输入的不是整数,我们通过scanner.next()消耗掉错误的输入,并输出错误提示信息给用户。

最后,当用户输入了一个符合要求的整数后,我们输出该值,并结束程序的执行。

通过使用while循环和条件判断,我们可以简单地实现输入验证的功能,确保用户输入的数据符合预期的要求。