java boolean占几个字节
米饭居士 2014-12-20 09:49:19 以下讨论基于32位cpu
卤煮整理的一些背景知识:
1. JAVA规范没有明确指出boolean占几个字节
2. JVM规范指出boolean当做int处理,也就是4字节,boolean数组当做byte数组处理。
3. JVM以计算机的字长作为最小处理单位。
卤煮的问题:
既然JVM以字长作为最小处理单元,那么byte,short 类型也要占用一个字长即32位吗?
如果不是,也就是说可以把byte当1字节处理,short当2字节处理,那么为什么要把boolean作为4字节处理,岂不是更浪费内存空间。