Java for循环和布尔数组都返回true

时间:2018-04-29 01:32:06

标签: java arrays for-loop boolean

不是最好的标题,但我需要帮助/解释为什么我的for-loop / boolean数组不能按照我想要的方式工作。

for (int i = 0; i < zombies.length; i++) {
    displayZombies(panel, g, zombies); 
    if (zomCollision(runner, zombies, panel, g) == true) 
      eliminated[i] = true;
    if (!eliminated[i])
      displayZombies(panel, g, zombies); 
  }

基本上,我的代码是一个简单的游戏,用户控制一个点(跑步者),并且在游戏中产生了一定数量的僵尸。用户通过与游戏中的所有僵尸相交/碰撞而获胜,这些僵尸存储为僵尸阵列中的点。

displayZombies做的是什么;它会创建僵尸并显示它们

如果其中一个僵尸和跑步者发生碰撞,

zomCollision会返回true。

zombies是存储僵尸数量的点数组。

布尔数组eliminated设置为false(设置为僵尸数)。

当我的跑步者与其中一个僵尸相交时,索引eliminated的{​​{1}}数组应设置为i,从而导致false - 语句不显示那个僵尸。然而,我正在努力解决的问题是,当我的跑步者击中任何僵尸时,他们都会消失。它是if - 循环导致那个或逻辑吗?任何建议都会有所帮助,谢谢!

0 个答案:

没有答案