【问题标题】:Is it possible to reenter a while loop after it has been broken out of?是否可以在中断后重新进入while循环?
【发布时间】:2020-07-22 19:40:57
【问题描述】:

所以当我设置一个“break;”在while循环结束时的语句,或者当它的条件设置为false时,有什么办法可以跳回循环的顶部并再次遍历它?

我知道“继续”;陈述。它会跳回到 while 循环的顶部,但只有在该循环内声明它时才会跳回。

完全退出循环后有什么方法可以达到同样的效果吗?

while(true) {
    //code
    break;
}

int i=1;

if(i=1) {
    //command to go back into the while loop
}

【问题讨论】:

  • 听起来你想将循环嵌套在另一个循环中。您想再次运行循环的条件是什么?
  • 嗨,您能否通过代码示例更具体地说明您要实现的目标。即使它是伪代码也会有所帮助。这看起来像 XY Problem
  • 不,不可能,不是程序语言。
  • 也许把你的循环放在一个方法中,不要使用循环本地的变量,所以当你打破循环时它们保持不变然后你可以再次调用方法(循环)是我能想到的最好的
  • 你可以将整个循环包裹在 another 循环中。不确定这是否是您要问的。

标签: java loops while-loop


【解决方案1】:

这似乎可以通过将代码拆分为方法并重用它们来解决?

void executeLoop() {
    while(true) {
        //code
        break;
    }
}

void doStuff() {
    executeLoop();
    int i=1;

    if(i==1) { // Added a = symbol here to compare instead of assigning
        executeLoop();
    }
}

【讨论】:

    【解决方案2】:

    试试这个。 您可以使用 goto() 标签并在循环顶部添加标签。

    标签: While 循环 转到标签;

    【讨论】:

    • goto 在 Java 中可能是保留的,但实际上并没有任何意义
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-01
    • 2014-11-13
    • 2015-01-04
    • 1970-01-01
    相关资源
    最近更新 更多