gpt4 book ai didi

java - 如何验证输入是否为 Int 且在数字范围内?

转载 作者:行者123 更新时间:2023-12-01 11:05:51 24 4
gpt4 key购买 nike

程序显示一个问题,用户需要输入数字 1 到 5。5 个用户有 5 个问题。但是,程序无法识别输入的好坏,只要它是 Int 即可。我必须输入多次才能再次运行 Survey.presentQuestions() 。我不明白为什么。

    for (int i = 0; i < 5; i++) 
{
for (int j = 0; j < 5; j++)
{
Survey.presentQuestion(j, i);
do{
TempAns = in.nextInt();
while (!(in.hasNextInt()))
{
System.out.println("Please enter integer value from 1 to 5!");
in.next();
}
}while(TempAns >= 1 && TempAns <= 5);
Survey.ResultArray[i][j] = TempAns;

}
}

最佳答案

更新试试这个

 for (int i = 0; i < 5; i++) {
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println("Student: "+(i+1)+" Grade: "+(j+1));
System.out.println("Please enter integer value from 1 to 5!");
TempAns = getNumber();
}
}

还有另一种方法

 public int getNumber(){
Scanner in =new Scanner(System.in);
int validatedNumber;
do{


try{
String toValidate=in.next();
validatedNumber= Integer.parseInt(toValidate);
if (validatedNumber>0 && validatedNumber<6){
return validatedNumber;
}else{
System.out.println("Between 1 and 5!!");
}
}catch(Exception e){
System.out.println("You have to chose a number!");
}
}while(true);

}

关于java - 如何验证输入是否为 Int 且在数字范围内?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32959812/

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