基本数据类型 - 对应包装类型- 其字节大小
| 基本类型 | 包装类型 | 字节 |
|---|---|---|
| boolean | Boolean | 1 |
| char | Char | 2 |
| byte | Byte | 1 |
| short | Short | 2 |
| int | Integer | 4 |
| long | Long | 8 |
| float | Float | 4 |
| double | Double | 8 |
每一个基本类型都会对应一个包装类型。
- 装箱:基本类型->包装类型
- 拆箱:包装类型->基本类型
自动装箱实际上在编译时会调用Integer.valueOf(手动装箱)方法来装箱 自动拆箱实际上会在编译时调用intValue
Integer i = 1; // 自动装箱
int j = i; // 自动拆箱
为什么需要包装类型
Java 是一个面向对象的语言,而基本类型不具备面向对象的特性。 这是一个设计缺陷,自动装箱与拆箱是为了补救这个缺陷。