background image
  
(4)布尔类型
布尔类型
boolean比较特殊,尽管Java虚拟机定义了boolean类型,但虚拟机对
boolean类型的支持是有限的,没有为boolean值单独设计JVM指令。操作布尔值的表
达式在编译之后,它使用的是
JVM的int数据类型,也就是占用4个字节。
JVM也不会直接支持boolean数组,boolean数组在编译之后,它的元素采用byte数据
类型,用
0表示false,1表示true,也就是boolean数组的元素只占用一个字节。
2.UTF-8与Unicode的关系
Unicode是一个统一的编码标准,将现有的所有字符进行唯一编码。在第一个Unicode
版本中,使用两个字节(
16位)来表示一个字符,注意这里的字节并非指的是计算机
内存中的存储单元,而是一个数学长度单位而已。然而,一个
Unicode字符在内存中存
储所占用的长度,就需要一个具体的编码规则来实现,比如
UTF-8。因此,Unicode只
是一个编码标准,而
UTF-8是对这个标准的一个实现,UTF-8规定了一个Unicode字符
在内存中占用的空间(英文和中文所占空间是不同的,有兴趣的读者可以查阅相关资
料)。
代码点指的是可以用于对字符集进行编码的那些数字,比如在
16位的Unicode编码字
符集中,字符
“A”的编码是U+0041,那么0041就是一个代码点。