【问题标题】:While loop not executing and I don't know why虽然循环没有执行,我不知道为什么
【发布时间】:2015-12-15 01:43:59
【问题描述】:

我正在创建一个循环,但由于某种原因它没有执行。这不是一个无限循环

while ((aH <= 0) || (bH <= 0))
{
  // ROUND LOOP START
  System.out.println("============");
  System.out.println("  Round " + round);
  System.out.println("============");


  // A TURN START
  while (endTurn == 1)
  {
   System.out.println("==========================");
   System.out.println("  Commander " + aN + ", GO!");
   System.out.println("==========================");
   endTurn++;

  // A TURN END
  }
  endTurn--;


  // B TURN START
  while (endTurn == 1)
  {
    System.out.println("==========================");
   System.out.println("  Commander " + bN + ", GO!");
   System.out.println("==========================");
   endTurn++;

  // B TURN END
  }
  endTurn--;
  bH -= 10;

  round++;
  // ROUND LOOP END
}

System.out.println("The loop was skipped for some reason");

当我在循环上执行测试时,发生了这样的事情。

The loop was skipped for some reason

目前循环没有目的,它会有功能,但我目前担心它没有执行。有人看到问题了吗?

【问题讨论】:

  • 你的变量被初始化成什么?
  • 我们不知道aHbH 的值是从什么开始的,所以我们无法回答这个问题。我预测它们大于 0。
  • 您的嵌套循环看起来也很奇怪。让我们拿第一个。假设 endTurn==1。然后循环将执行,endTurn 将变为 2,循环将退出。否则假设 endTurn 不等于 1。那么循环将不会执行。为什么不直接使用 if 语句而不是 while 循环?

标签: java while-loop nested-loops


【解决方案1】:

当我意识到我错误地使用了 while 循环时,我打了自己一巴掌。无论如何……不再是问题了!还是谢谢!

【讨论】:

    猜你喜欢
    • 2015-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-05
    • 2020-06-08
    • 1970-01-01
    相关资源
    最近更新 更多