如何退出两个嵌套循环?

2022-09-01 00:49:07

我已经使用Java很长一段时间了,但我的循环教育有些欠缺。我知道如何创建java中存在的每个循环,并打破循环。但是,我最近想到了这一点:

假设我有两个嵌套循环。我可以只用一个语句来打破两个循环吗?break

这是我到目前为止所拥有的。

int points = 0;
int goal = 100;
while (goal <= 100) {
    for (int i = 0; i < goal; i++) {
        if (points > 50) {
           break; // For loop ends, but the while loop does not
        }
        // I know I could put a 'break' statement here and end
        // the while loop, but I want to do it using just
        // one 'break' statement.
        points += i;
    }
}

有没有办法做到这一点?


答案 1

在Java中,您可以使用标签来指定要中断/继续的循环:

mainLoop:
while (goal <= 100) {
   for (int i = 0; i < goal; i++) {
      if (points > 50) {
         break mainLoop;
      }
      points += i;
   }
}

答案 2

是的,您可以使用标签写中断,例如:

int points = 0;
int goal = 100;
someLabel:
while (goal <= 100) {
   for (int i = 0; i < goal; i++) {
      if (points > 50) {
         break someLabel;
      }
   points += i;
   }
}
// you are going here after break someLabel;

推荐