该表显示了所有原始类型的大小和值范围:
数据类型 | 数值表示 | 值范围 | 默认值 |
---|---|---|---|
布尔值 | 不适用 | 虚假和真实 | 假 |
字节 | 8位带符号 | -2 7到2 7 - 1 | 0 |
-128至+127 | |||
短 | 16位带符号 | -2 15 2 15 - 1 | 0 |
-32,768至+32,767 | |||
整型 | 32位签名 | -2 31 2 31 - 1 | 0 |
-2,147,483,648至+2,147,483,647 | |||
长 | 64位签名 | -2 63到2 63 - 1 | 0升 |
-9,223,372,036,854,775,808至9,223,372,036,854,775,807 | |||
浮动 | 32位浮点 | 1.401298464e-45至3.402823466e + 38(正数或负数) | 0.0F |
双 | 64位浮点 | 4.94065645841246544e-324d至1.79769313486231570e + 308d(正负) | 0.0D |
烧焦 | 16位无符号 | 0至2 16 - 1 | 0 |
0至65,535 |
笔记:
Java语言规范要求,带符号整数类型(byte至long)使用二进制的二进制补码表示形式,而浮点类型则使用标准的IEE 754二进制浮点表示形式。
Java 8和更高版本提供了在int和上执行无符号算术运算的方法long。虽然这些方法允许一个程序来处理各自类型的值作为无符号的类型仍然有符号类型。
上面显示的最小浮点是次正规的; 即它们的精度低于正常值。最小的标准数是1.175494351e−38和2.2250738585072014e−308
甲char通常表示一个Unicode / UTF-16代码单元。
尽管aboolean仅包含一小部分信息,但是其在内存中的大小根据Java虚拟机的实现而有所不同(请参阅boolean类型)。