加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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

发布时间:2020-12-14 05:13:04 所属栏目:Java 来源:网络整理
导读:“新”多贵?我的意思是说,我是否应该重新使用同一个对象,或者如果对象“超出范围”,那么它是否排空呢? 例如,说一个方法创建一个列表: ListInteger list = new ArrayListInteger(); 在方法结束时,列表不再被使用 – 这是否意味着没有内存分配给它,或者这意
“新”多贵?我的意思是说,我是否应该重新使用同一个对象,或者如果对象“超出范围”,那么它是否排空呢?

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

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

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

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

谢谢!

解决方法

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读