本文将逐个介绍 Java 的基础类型,使各位对 Java 的基础变量类型有更深的了解。
基础变量类型介绍
int
- int类型是声明一个变量为整数型。
- 占用内存32位。
- 范围为 -2 ^ 31 ~ 2 ^ 31 - 1。
- 默认值为0。
short
- short类型是声明一个变量为短整型。
- 占用内存16位。
- 范围为 -2 ^ 15 ~ 2 ^ 15 - 1。
- 默认值为0。
long
- long类型是声明一个变量为长整型。
- 占用内存64位。
- 范围为 -2 ^ 63 ~ 2 ^ 63 - 1。
- 默认值为 0L。
- 声明需注意,数字后跟L,例如:long a = 2000L;
float
- float类型是声明一个变量为单精度、符合IEEE 754标准的浮点数。
- 占用内存32位。
- 默认值为 0.0f。
- 声明需注意,数字后跟f,例如 float b = 3.14f。
- float类型不能用于表达精确值!
double
- double类型是声明一个变量为双精度、符合IEEE 754标准的浮点数。
- 占用内存32位。
- 默认值为 0.0d。
- double类型同样不能用于表达精确值!
- 当一个浮点数未明确声明为float型时,默认为double型
boolean
- boolean类型是声明一个变量为布朗逻辑型。
- 占用内存为1位。只有 true 与 false 两种值。
- 默认值为 false。
byte
- byte类型是声明一个变量为以二进制补码表示的整数。
- 占用内存8位。
- 范围为 -128 ~ 127。
- 默认值为0。
char
short类型是声明一个变量为Unicode字符。
占用内存为16位。
可以存储任何字符。
注意 String 不是基础变量。
基础变量类型间的转换
隐式转换
隐式转换的意思是,不通过显式声明,由程序默认按优先级高低从低级向高级转换。
1 | 低级 -> 高级 |
例如:
1 | char c1='a'; |
此时输出的结果为
1 | char 自动类型转换为 int 后的值等于 97 |
显式转换
显式转换的意思是,通过显式声明,将一个变量类型转换成另一变量类型,如
1 | int i = 1; |
显式类型需要注意:
- 不能对boolean类型进行类型转换。
- 不能把对象类型转换成不相关类的对象。
- 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
- 转换过程中可能导致溢出或损失精度,例如:
1 | int i = 128; |
此时输出b的值为 -128。
基础变量的包装类
Java 中每一个基础变量都有一个对应的包装类,对基础变量进行操作。
- Integer
- Short
- Long
- Float
- Double
- Boolean
- Byte
- Character
包装类可以对基本类型进行操作,如 Integer 类提供了将 String 变量转换为 int 变量的方法。
1 | String str = "123"; |
此时a的值为 123。
其余类型同理,具体可以通过快捷键在idea中查看各个包装类的方法,此处不再赘述。