java - Java中ArrayList的内存大小是多少

标签 java memory size arraylist

我有一个 ArrayList<Obj>我想知道它使用了多少内存。

Obj是变体,所以它不像将数组中元素的数量乘以对象的大小那么容易。

最佳答案

是java.util.ArrayList的容量乘以引用大小(32bit 4 bytes, 64bit 8bytes) + [Object header + 1 int and 1 references].

容量与大小不同(总是>=),但您想让它们相等,请调用trimToSize()

从技术上讲,ArrayList 有一个 Object[] 用于存储数据。

关于java - Java中ArrayList的内存大小是多少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4739947/

相关文章:

java - 获取 JPanel 的大小

java - 在数组中存储坐标并在java中比较它们的最佳方法?

java - 圆边按钮

c - 学习 C 试图通过函数找出这个 malloc 的东西

javascript - 从链接获取图像大小作为动态内容

java - 布局和最小尺寸

java - 为什么我的代码创建了一个 .txt 文件,但没有在其中写入信息?

java.lang.UnsupportedOperationException : Cannot have circular references in bean class but got the circular reference of class java. 时间.ZoneOffset

当只有一个元素存在时,python lxml 会占用大量内存

c# - 如何保护进程的内存