gpt4 book ai didi

java - 如何接受用户输入一定范围内的整数

转载 作者:行者123 更新时间:2023-12-02 09:12:16 25 4
gpt4 key购买 nike

我正在制作一个 madlibs,我的问题之一是让用户输入 1 - 12 之间的整数,这样我就可以用它来制作时间。呃。我下午 6 点离开家。

这是我完成的代码,但它不起作用。我不知道如何解决这个问题。如果用户输入无效答案,则会重复该问题,直到提交有效答案。

Scanner input = new Scanner(System.in);

int hourstime;

System.out.print("Give me another whole number between 1 and 12. ");
while (!input.hasNextInt()) {
System.out.println("That's not a number!");
input.next();
}
while (input.hasNextDouble()) {
System.out.println("I need a whole number. ");
input.next();
}
while (input.hasNextInt() >= 13 || input.hasNextInt() <= 0) {
System.out.println("I need a number between 1 and 12. ");
input.next();
}

hourTimes= input.nextInt();
System.out.println("Thanks. The time would be " + hours time + " P.M.");

最佳答案

您需要将数字分配给一个变量,就像我在此处所示的那样。


Scanner input = new Scanner(System.in)
int value = 0;
while (true) {
System.out.print("Please enter a value between 1 and 12: ");
value = input.nextInt();
if (value >= 1 && value <= 12) {
break;
}
System.out.println("That is not within the range!");
}
// now do something with value.

您也可以将其用作其他提示的模型。

另请注意,hasNext 方法返回一个 boolean 值(true 或 false) 而不是数字。当从控制台提示时,如果您正确构建代码,您实际上并不需要它们。我倾向于仅在从文件中读取时才使用它们。

一般情况下。

  1. 提示输入值。
  2. 读入值。
  3. 验证该值是否正确。
  4. 如果正确,则继续执行该程序。
  5. 从 (1) 开始重复。

关于java - 如何接受用户输入一定范围内的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59309096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com