java设计当初就提供了八种基本数据类型以及对应的包装类。java是一种面向对象编程的高级语言,所以包装类正是为了解决基本数据类型无法面向对象编程所提供的。
下面是基本类型与对应的包装类型
| 基本数据类型 | 包装类型 |
|---|---|
| byte | Byte |
| boolean | Boolean |
| short | Short |
| char | Char |
| int | Int |
| long | Long |
| float | Float |
| double | Double |
Integer是int的包装类,int则是java的一种基本数据类型
Integer变量必须实例化后才能使用,而int不需要
Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象,而int则是直接存储数据值。
Integer的默认值是null,int的默认值是0
- 集合泛型只能是包装类成员变量不能有默认值方法参数允许定义空值
装箱:基本数据类型转换成包装类型
拆箱:包装类型转换成基本数据类型
怎么理解强制类型转换?强制显示的把一个数据类型转换为另一种数据类型
怎么理解自动类型转换?数字表示范围小的数据类型可以自动转换为范围大的数据类型。
怎么理解类型提升?在多种不同数据类型的表达式中,类型会自动向范围表示大的值的数据类型提升。



