我有一个 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/