java - 跳出 "if"语句并返回到 "for"循环的开始

标签 java if-statement for-loop break

因此,对于类作业,我必须接受用户输入并分配我的沙鼠对象每天可以使用的“食物”量。在这种情况下,我已经从用户那里获取了每天的最大食物量,如果用户尝试输入超过每日最大值的值,我需要向用户提供错误消息。

如果是这种情况,则需要重新提示他们输入沙鼠吃的食物量。

我似乎无法弄清楚如何跳出“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/

相关文章:

java - GoogleSignInResult isSuccess 失败

java - 如何使用 BigInteger 类在 Java 中生成一个随机的 n 位整数?

vba - 为什么 If Not IsEmpty 不过滤掉空字符串?

c# - 检查倒计时器是否为0

javascript - 在 if 条件 javascript 中使用函数返回值?

python - 数组更改后立即跳出循环

java - 如何以编程方式设置相对布局中 TextViews 的对齐父右属性

java - 关闭 org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping detectorHandlers

python - Numpy for 循环每次都会给出不同的结果

c++ - Foreach 循环和箭头/点运算符的区别?