1. 包装类
其实我们在介绍基础数据类型时,已经简单提到过包装类,再来回顾下 8 种基础数据类型对应的包装类:
基础数据类型 | 包装类 |
---|---|
byte | Byte |
boolean | Boolean |
short | Short |
char | Character |
int | Integer |
long | Long |
float | Float |
double | Double |
有 2 点需要说明一下:
- 基础数据类型是没有方法,并且我们定义基础数据变量时,也从来没有用过
new
来产生一个对象 - 包装类是对象,它具备很多方法,从而丰富了基础数据类型的使用场景
2. 自动拆装箱
上面提到包装类其实是一个对象,以Integer
为例,那么定义一个Integer
类型的变量,应该采用如下形式:Integer i = new Integer(3);
Java 中为了使用包装类更方便,简化了包装类的定义方式,即可以采用如下形式,也可以定义一个Integer
变量:
Integer i = 3;
显然上面简化形式的变量定义,左侧是Integer
包装类,而右侧则是基础数据类型,在 Java 中将基础数据类型转换为包装类的过程称之为自动拆装箱。