当前位置: 首页 > 面试题库 >

如何退出两个嵌套循环?

章飞章
2023-03-14
问题内容

我已经使用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;
    }
}

有没有办法做到这一点?


问题答案:

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

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


 类似资料:
  • 我想在Python2.7中并行化两个嵌套的for循环,但我自己没有成功。我不知道如何接近什么是并行化的定义。 总之,这里是单处理器代码:

  • 我已经在下面编写了简单的嵌套For循环; 在我的Android设备或模拟器中运行此操作,或的最大值应为和。 然而,代码似乎在max和max时退出(至少吐司消失了)。 对于较低的和值,它可以正常工作。我是不是遇到了内存问题或者发生了什么?

  • 我已经写了下面的简单嵌套的for循环; 无论是在我的Android设备上还是在模拟器上运行,或的最大值应该是和。 然而,代码似乎在max和max时退出(至少Toast消失了)。 对于较低的和值,它可以正常工作。我是不是遇到了内存问题或者发生了什么?

  • 如果您能帮助我完成Java类的任务,我将不胜感激。问题提示如下: 编写一个程序来读取非负整数列表并显示最大整数、最小整数和所有整数的平均值。用户通过输入一个不用于查找最大值、最小值和平均值的负哨兵值来指示输入的结束。平均值应该是双精度类型的值,以便用小数部分计算。 我在代码中遇到的问题是,运行时,循环不会完成,除非输入的第一个值为负值,在这种情况下它返回: 输入的最大数字是:0输入的最小数字是:0

  • 我想优化下面的代码。streams会优化下面嵌套的foreach循环吗?如果是这样的话,我是streams的新手,有人能帮我吗?出于项目保密的目的,我在下文中替换了这些名称。应使用tList进行代码中的进一步处理。有人能帮忙吗?