目录
Java是一种静态强类型语言,分为8种基本类型(primitive type)和3种引用类型(reference type),其中基本类型包含4种整数类型、2种浮点类型、1种表示Unicode字符的char类型、1种表示真假值的boolean类型,引用类型包含 类(class)类型、接口(interface)类型、数组(array)类型。另外,还包括了一个特殊的空(null)类型。
基本数据类型(Primitive Type)
1.整数(integral)类型
类型 | 存储需求 | 取值范围 |
byte | 1字节 | -128(-27)~ 127(27-1) |
short | 2字节 | -32768(215)~ 32767(215-1) |
int | 4字节 | -2,147,483,648(-231)~ 2,147,483,647(231 -1) |
long | 8字节 | -9,223,372,036,854,775,808L(-263)~ 9,223,372,036,854,775,807L(263 -1) |
2.浮点(floating-point)类型
浮点类型遵循IEEE 754二进制浮点算术标准。D是小数点后面的十进制位数。
类型 | 存储需求 | 取值范围 |
float(单精度) | 4字节 | 大约±3.4 028 234 663 852 886E+38f(小数点后大约7个十进制小数位) |
double(双精度) | 8字节 | 大约±1.7 976 931 348 623 157E+308 (小数点后大约15个十进制小数位) |
三个特殊的浮点数值:
- 正无穷大
- 负无穷大
- NaN(不是一个数字)
3.字符(char)类型
类型 | 存储需求 | 取值范围 |
char | 2字节 | 从'\u0000' 到 '\uffff' ,即从0 到 65535 |
转义序列 | 名称 | Unicode值 |
\b | 退格 | \u0008 |
\t | 制表 | \u0009 |
\n | 换行 | \u000a |
\r | 回车 | \u000d |
\s | 空格 | \u0020 |
\” | 双引号 | \u0022 |
\’ | 单引号 | \u0027 |
\\ | 反斜杠 | \u005c |
4.布尔(boolean)类型
boolean类型有两个值:true和false,用来判断真假。
引用数据类型(Reference Type)
引用类型包含 类(class)类型、接口(interface)类型、数组(array)类型。
类型默认值
声明字段时,不一定总是需要分配值。编译器会将已声明但未初始化的字段设置为合理的默认值。一般来说,此默认值为0或null
,具体取决于数据类型。但是,通常认为依赖于此类默认值是不好的编程风格。
下表总结了上述数据类型的默认值:
数据类型 | 默认值 |
---|---|
byte | 0 |
short | 0 |
int | 0 |
long | 0L |
float | 0.0f |
double | 0.0d |
char | ‘\u0000’ |
String (或 任何对象) | null |
boolean | false |
局部变量略有不同。编译器永远不会为未初始化的局部变量分配默认值。如果无法在声明它的地方初始化局部变量,请确保在尝试使用它之前为其分配一个值,访问未初始化的局部变量将导致编译时错误。
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/java/javalang/2473.html