java – 更高效?清空一个对象或创建一个新对象?

前端之家收集整理的这篇文章主要介绍了java – 更高效?清空一个对象或创建一个新对象?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
“新”多贵?我的意思是说,我是否应该重新使用同一个对象,或者如果对象“超出范围”,那么它是否排空呢?

例如,说一个方法创建一个列表:

List<Integer> list = new ArrayList<Integer>();

方法结束时,列表不再被使用 – 这是否意味着没有内存分配给它,或者这意味着它有一个空指针(因为它是“创建”).

或者,我可以向方法发送一个“列表”,并在方法结束时将其清空:list.removeAll(list);会不会从内存的角度出发?

谢谢!

解决方法

它的一个数组列表,所以创建一个新的对象意味着分配一块内存和归零,加上任何簿记开销.清除列表意味着清零内存.这种观点将导致您相信清除现有对象更快.但是,JVM很可能被优化以使内存分配快速,所以可能不重要.所以只要写清楚,可读的代码,不用担心.毕竟这是java,不是c.

猜你在找的Java相关文章