2016-12-08 50 views
0

我的教授未能解释的一件事是包装类(例如Integer.*Double.*)是否占用更多的RAM空间,因为它们具有对象引用格式而不是基本数据类型。包装类RAM

+3

是的,盒装类型比无盒装原语占用更多空间。我很确定这总是如此。 – Carcigenicate

+0

看到这个答案http://stackoverflow.com/a/258150/2310289 –

回答

1

是的,盒装产品类型接受,因为 更多的空间 - 指针引用它(现代,非嵌入式的结构通常64位) - 在本地实现对象的附加字段(如,可能,参考类,ID等)

但是,至少在理论上,JVM/Hotspot可能会根据其利用率优化某些盒装类型。