基本レベル クラスの update メソッドに次のコードがあります。
while(entities.iterator().hasNext()){
if(entities.iterator().next() != null){
entities.iterator().next().update();
Gdx.app.log(Game.LOG, "Updated Entity "+entities.iterator().next().getName()+".");
}
else{
Gdx.app.log(Game.LOG, "Could not update Entity.");
}
}
ただし、このステートメントを実行するとプログラムがフリーズするため、クラッシュ情報を提供せずに強制終了する必要があります。while の代わりに if ステートメントを使用してフリーズを停止できますが、配列内の最初のエンティティのみが更新されます。
フリーズの原因は何ですか?また、フリーズを引き起こさずにイテレータをループするにはどうすればよいでしょうか?