重新实例化List或调用clear()的更好方法

重新实例化List或调用clear()的更好方法,第1张

重新实例化List或调用clear()的更好方法

主要要考虑的是 其他 代码可能引用了该列表。如果现有列表在其他位置可见,您是否希望该代码查看已清除列表,还是保留现有列表?

如果没有其他可以看到的列表,我可能会清除它-但不是出于性能原因;仅仅因为您描述 *** 作的方式 听起来 比“创建新列表”更像是清除 *** 作。

ArrayList<T>
文档不指定会发生什么情况基础数据结构,但是看着在Eclipse
1.7的实现,它看起来像你应该叫
trimToSize()
clear()
-否则,你仍然可以有一个大阵空引用的支持列表。(当然,也许这对您来说不是问题,也许这比在再次建立大小时复制数组要更有效。您将比我们更了解这一点。)

(当然,创建新列表并不需要旧列表将所有数组元素设置为null …,但我怀疑这在大多数情况下是否有意义。)



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5479008.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存