如何解决如何在循环内返回一个值以便其他方法可以访问它?
基本上,我需要返回正确的年份,即 2022 年以上。我需要返回它,以便其他方法可以访问它。如果用户没有输入它,这被假设为一个循环说错误。
Scanner input = new Scanner(System.in);
boolean good = false;
do
{
System.out.println("Enter the expiration year:");
int userYear = Integer.parseInt(input.nextLine());
if(userYear > 2022)
good = true;
else
System.out.println("Invalid. Try again.");
int userYears = Integer.parseInt(input.nextLine());
}
while (!good);
good = false;
// return userYear;
我想回到这里,以便我的其他方法可以看到。
解决方法
在循环外创建 int userYears。然后只需更改循环内的值。您不需要 userYears 和 userYear。它们是变量,它们的值可以改变
,您可以立即退货
if (userYear > 2022) {
return userYear;
}
或者,如果您需要在返回值之前做一些事情,请在循环外(之前)创建变量 userYear
int userYear;
do {
// some code
} while (!good);
// some more code
return userYear;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。