java 查看对象实际占用内存大小

通过借助org.apache.lucene工具类查看,几种方式中选择这种比较方便。

<dependency><groupId>org.apache.lucene</groupId><artifactId>lucene-core</artifactId><version>4.0.0</version>
</dependency>
<dependency><groupId>org.apachemons</groupId><artifactId>commons-lang3</artifactId><version>3.12.0</version>
</dependency>
// 查看大小,单位是字节
RamUsageEstimator.sizeOf(map);
// 查看对象大小,单位自动转为人工单位最大的,如kb,mb,gb等。
RamUsageEstimator.humanSizeOf(map);

参考: