如何解决当ArrayList中的元素少于其容量时会发生什么?
说容量为10,我向ArrayList添加5个元素。它们会占用5或10个元素大小的内存吗?
解决方法
javadoc指出:
每个
ArrayList
实例具有容量。容量是用于在列表中存储元素的数组的大小。它总是至少与列表大小一样大。将元素添加到ArrayList
时,其容量会自动增长。除了添加元素具有固定的摊销时间成本这一事实外,没有指定增长策略的详细信息。
基于上述内容:
ArrayList
中的元素少于其容量会发生什么?
鉴于后备阵列的大小为“容量”,则阵列中将有未使用的插槽。
(该实现可确保那些未使用的插槽包含null
,以避免任何内存泄漏。)
说容量为10,我向
ArrayList
添加5个元素。它们会占用5或10个元素大小的内存吗?
大小应为10个对象引用的大小,因为ArrayList
保留对对象的引用...而不是实际元素对象本身。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。