在Java中使用回调函数控制用户输入



首先,我是一个完全陌生的Java和试图理解POO。

表示:

在一个类中,我定义了一个名为inputCapacity的方法。我希望我的用户输入1到4之间的数字。为了验证,我尝试实现了一个小条件。

:当User犯错误时,函数循环正常,但是返回的userResponse对应于第一个输入!我需要在哪里重新分配变量?

精度测量:

  • Java 13
  • 控制台应用
static int inputCapacity() {
Scanner in = new Scanner(System.in);
System.out.println("Indiquez le nombre de personnes (max 4) : ");
int userResponse = in.nextInt();
if (userResponse < 1 || userResponse > 4) {
System.out.println("Saisissez un nombre valide (max 4).");
inputCapacity();
}
return userResponse;
}

第二次调用inputCapacity()时,第二次调用的结果将被忽略。只需在调用前添加一个return语句就可以解决问题。

static int inputCapacity() {
Scanner in = new Scanner(System.in);
System.out.println("Indiquez le nombre de personnes (max 4) : ");
int userResponse = in.nextInt();
if (userResponse < 1 || userResponse > 4) {
System.out.println("Saisissez un nombre valide (max 4).");
return inputCapacity();
}
return userResponse;
}

相关内容

  • 没有找到相关文章

最新更新