在 Java 中,基本数据类型是构建程序的基础元素,它们代表了最基本的数据形式。Java 有 8 种基本数据类型,可分为 4 大类,以下为你详细介绍:
整数类型
用于表示整数数值,不同的整数类型具有不同的取值范围和占用的存储空间。
| 数据类型 | 关键字 | 占用存储空间 | 取值范围 | 示例 |
|---|---|---|---|---|
| 字节型 | byte | 1 字节(8 位) | -128 到 127 | byte num = 100; |
| 短整型 | short | 2 字节(16 位) | -32768 到 32767 | short num = 2000; |
| 整型 | int | 4 字节(32 位) | -2147483648 到 2147483647 | int num = 100000; |
| 长整型 | long | 8 字节(64 位) | -9223372036854775808 到 9223372036854775807 | long num = 1234567890123L;(长整型数值后需加 L 或 l) |
浮点类型
用于表示带有小数部分的数值,分为单精度和双精度。
| 数据类型 | 关键字 | 占用存储空间 | 取值范围 | 示例 |
|---|---|---|---|---|
| 单精度浮点型 | float | 4 字节(32 位) | 大约 ±3.40282347E+38F(有效位数 6 - 7 位) | float num = 3.14F;(单精度浮点型数值后需加 F 或 f) |
| 双精度浮点型 | double | 8 字节(64 位) | 大约 ±1.79769313486231570E+308(有效位数 15 位) | double num = 3.14159; |
字符类型
用于表示单个字符,采用 Unicode 编码。
| 数据类型 | 关键字 | 占用存储空间 | 取值范围 | 示例 |
|---|---|---|---|---|
| 字符型 | char | 2 字节(16 位) | '\u0000' 到 '\uffff'(即 0 到 65535) | char ch = 'A'; |
布尔类型
用于表示逻辑值,只有两个取值:true 和 false。
| 数据类型 | 关键字 | 占用存储空间 | 取值范围 | 示例 |
|---|---|---|---|---|
| 布尔型 | boolean | 未明确规定(理论上 1 位) | true 或 false | boolean isReady = true; |
基本数据类型的使用注意事项
-
数据类型转换:在进行不同数据类型之间的运算或赋值时,可能需要进行数据类型转换。分为自动类型转换(小范围类型向大范围类型转换)和强制类型转换(大范围类型向小范围类型转换,可能会丢失精度)。
收起
java
// 自动类型转换
int num1 = 10;
double num2 = num1;
// 强制类型转换
double num3 = 3.14;
int num4 = (int) num3;
-
默认值:在类中定义的基本数据类型成员变量,如果没有显式初始化,会有默认值。
byte、short、int、long的默认值是 0;float、double的默认值是 0.0;char的默认值是 '\u0000';boolean的默认值是false。而局部变量必须显式初始化才能使用。
收起
java
class Test {
byte b; // 默认值 0
short s; // 默认值 0
int i; // 默认值 0
long l; // 默认值 0L
float f; // 默认值 0.0f
double d; // 默认值 0.0
char c; // 默认值 '\u0000'
boolean bool; // 默认值 false
public static void main(String[] args) {
Test test = new Test();
System.out.println(test.i);
}
}
总结
基本数据类型分类 字节数 一个字节 八位 2 的次幂 代表 值的大小(注意正负)
- 整形
- byte 1
- short 2
- int 4
- long 8
- 浮点型
- float 4
- double 8
- 字符型
- char 2
- 布尔型
- boolean 1