【发布时间】:2014-04-03 03:55:28
【问题描述】:
我的 Android 应用有点问题。我有一个 while 循环,它应该循环遍历迭代器中的每个对象并渲染它们。问题是 while 循环不会渲染所有对象。它比我指定的数量少一。例如,如果迭代器中有 5 个对象,则只渲染 4 个,并且迭代器中的最后一个对象是不可见的(但仍然存在)。这是代码。
enemyIterator = enemies.iterator();
while (enemyIterator.hasNext())
{
Enemy zombie = enemyIterator.next();
zombie.update();
batch.draw(zombie.getCurrentFrame(), zombie.getPosition().x,
zombie.getPosition().y);
}
我怀疑它与“hasNext()”方法有关;一旦迭代器循环到最后一个对象,hasNext() 方法将返回“false”,因此即使最后一个对象存在,它也不会被渲染。
如果这不是问题,我不确定是什么问题,因为我知道我的应用程序只渲染了迭代器中除一个对象之外的所有对象。
谁能帮我找到解决这个问题的方法?
提前致谢
【问题讨论】:
标签: android iterator return render