创建游戏时,您想从屏幕上删除 ArrayList 中的某些内容,比如说子弹,是否可以arrayList.remove(index)
将其从游戏中删除?或者以这种方式完成时它是否仍在使用内存?
如果这不是首选的方法,请指出我正确的方向:)
创建游戏时,您想从屏幕上删除 ArrayList 中的某些内容,比如说子弹,是否可以arrayList.remove(index)
将其从游戏中删除?或者以这种方式完成时它是否仍在使用内存?
如果这不是首选的方法,请指出我正确的方向:)
答案是可能的。从 中删除项目符号ArrayList
将消除对它的引用。如果没有其他引用,则子弹对象最终将被 GC。
当然,屏幕必须在没有子弹的情况下重新绘制自己,这主要是一个单独的问题。
如果您从 ArrayList中删除一个对象,并且该对象没有任何其他引用,那么它将是垃圾收集器的“合格” 。
之后,您不必担心将其从堆中删除:JVM 将通过自动垃圾收集器来完成此操作。
对于您提出的问题;
或者以这种方式完成时它是否仍在使用内存?
答案是; 是的,它仍然会占用内存,除非 JVM 调用垃圾收集并释放内存。
希望有帮助。