我是Java新手,英语不够好,希望大家见谅。
问题 1:我有一个 ArrayList(J2SE) 或 Vector(J2ME),我有一个类(例如:Bullet),当我开火时,我将该类的一个实例添加到列表中,在子弹击中目标后,我需要销毁它们并将它们从列表中删除。我想问:如何完全删除我需要删除的对象,我的意思是:释放该对象占用的所有内存(与 C++ 中的删除指针相同)。对于普通对象,我们可以使用“= null”,但是在这里,这个对象是在一个列表中,我们不能这样使用。我尝试使用 System.gc(),但这是个坏主意,与我不使用 gc() 相比,程序会变慢并且内存增加更多。如果我只使用 List.remove(bullet_index),内存会增加一点,但不会减少。
问题2:有没有其他想法可以用“无限数量的子弹”和记忆安全的枪射击。
我做一个简单的2D射击游戏