因此,对于类作业,我必须接受用户输入并分配我的沙鼠对象每天可以使用的“食物”量。在这种情况下,我已经从用户那里获取了每天的最大食物量,如果用户尝试输入超过每日最大值的值,我需要向用户提供错误消息。
如果是这种情况,则需要重新提示他们输入沙鼠吃的食物量。
我似乎无法弄清楚如何跳出“if”语句并返回到“for”循环的顶部。这是我的代码:
for (int j = 0; j < numberOfFoods; j++) {
System.out.println(gerbilId[index].substring(index)
+ " eats how many " + foodNames[j] + "s per day");
int amountOfFood = keyboard.nextInt();
if (amountOfFood > foodMax[j]) {
System.out.println("Error. Please input a valid amount of food");
break;
} else {
gerbilConsumption[index] = amountOfFood;
}
}
最佳答案
说 use continue
的答案是错误的,因为它们不是您在这种情况下要查找的内容。 continue
会将您转到下一种食物类型,但如果输入无效,您希望留在同一种食物上。您需要执行 j--;
才能再次使用该号码
if (amountOfFood > foodMax[j]) {
System.out.println("Error. Please input a valid amount of food");
j--;
} else {
gerbilConsumption[index] = amountOfFood;
}
关于java - 跳出 "if"语句并返回到 "for"循环的开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23097696/