Java中的基本数据类型不是对象,没有方法和属性。
然而,在集合ArrayList中,泛型只能是引用类型。
这时候如何向中存放int类型呢?答:用包装类Integer
// 错误写法: ArrayList<int> list = new ArrayList<>();
ArrayList<Integer> list = new ArrayList<>();
包装类让这8种基本数据类型拥有方法和属性,以实现对象化交互。
区别:基本类型用于存储值,直接赋值即可,在栈内存中;
包装类型是类,它的实例是对象,需要使用new关键字创建,初始值为null,在堆内存中。
基本数据类型对应的包装类
- 数值型
- 整数类型
- 字节 byte————对应包装类:Byte
- 短整型 short————Short
- 整形 int————Integer【注意!】
- 长整型 long————Long
- 浮点类型
- 单精度浮点型 float————Float
- 双精度浮点型 double————Double
- 整数类型
- 字符型 char————Character【注意!】
- 布尔型 boolean————Boolean
基本数据类型和包装类之间的转换
装箱:基本数据类型 ——> 包装类;
拆箱:包装类 ——> 基本数据类型。
从JDK1.5版本开始,支持自动装箱、自动拆箱。