摘自《深入Java虚拟机第二版》
boolean是基础类型,但它有点特殊。指令集对boolean的支持有限,当编译器把Java代码编译为字节码的时候,会用int或byte来表示boolean。在Java虚拟机中,false是用整数零来表示,所有非零整数都表示true。
涉及boolean的操作会使用int,boolean数组则是当做byte数组来访问,而在“堆”区,它也可以表示为位域。
本文探讨了Java中boolean类型的底层实现方式。由于Java虚拟机(JVM)指令集对boolean的支持有限,在编译阶段,Java编译器会将boolean转换为int或byte。在JVM中,false被表示为整数0,所有非零整数则表示true。对于boolean操作,通常使用int;而boolean数组则作为byte数组进行处理。
摘自《深入Java虚拟机第二版》
boolean是基础类型,但它有点特殊。指令集对boolean的支持有限,当编译器把Java代码编译为字节码的时候,会用int或byte来表示boolean。在Java虚拟机中,false是用整数零来表示,所有非零整数都表示true。
涉及boolean的操作会使用int,boolean数组则是当做byte数组来访问,而在“堆”区,它也可以表示为位域。
976
924
905
1052
504
197

被折叠的 条评论
为什么被折叠?