java - 检查用户输入和 for 循环

标签 java

我的 for 循环遇到问题。

我的目标是

  1. 检查用户输入的是整数而不是字符串。
  2. 循环 6 次,每次都提示用户输入。

使用我当前的代码,我得到以下输出:

Enter integer: 
a
invalid input
Enter integer: 
invalid input
Enter integer: 
invalid input
Enter integer: 
invalid input
Enter integer: 
invalid input
Enter integer: 
invalid input
BUILD SUCCESSFUL (total time: 3 seconds)

我能够检查用户输入的整数。但是,我的 for 循环似乎无法正常工作。我可以请求这方面的帮助吗?

下面是我的代码:

String a = "";
int count;

for (count = 0; count < 6; count++) {
    System.out.println("Enter integer: ");

    if (keyboard.hasNextInt()) {  
        System.out.println(a + "is correct integer"); 
    }
    else {
        System.out.println("invalid input");
    }
}

最佳答案

您不会消耗任何用户输入,如果您要读取 inta 应该是 int(s )。我想你想要类似的东西

for (int count = 0; count < 6; count++) {
    System.out.println("Enter integer: ");
    if (keyboard.hasNextInt()) {
        int a = keyboard.nextInt();
        System.out.printf("%d is an integer%n", a);
    } else {
        System.out.println("invalid input " + keyboard.nextLine());
    }
}

关于java - 检查用户输入和 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27779016/

相关文章:

java - rxjava 中的异常处理

java - 如何在JPanel中设置背景图片

java - 无法从某些网址获取图像内容

java - 为什么使用 EnumMap 而不是 HashMap

java - 是否可以从非所有者的 Android 设备上读取记录?

java - 从接口(interface)获得的方法的访问修饰符

java - 通过 SFTP 从服务器读取巨大动态文件的末尾

java - 强制使用 TypeToken?

java - Log4j2无法扩展系统属性user.home

java - 如何设置GridBagLayout的宽度?