在java中有八种基本数据类型对应每种基本类型又有八种包装类型:
基本类型:boolean, char, int, byte,short,long, float,double
包装器类型:Boolean,Character,Integer,Byte,Short,Long,Float,Double
既然有了基本类型为什么还要有包装类呢?
1.包装类是对象类型,在使用时需要传入一个对象,比如 集合能接收的类型为Object,基本类型是无法添加进去的,还有范型也必须使用包装类
2.使用含义上,int初始化是0,而integer作为对象是要初始化赋值的,不赋值情况下是null,在某些场合下0是有意义的,是刻度,而不是我们期望的为空。考试分数为0和未考试,是两种类型。
3.包装类型是引用类型,说白了就是一个类,类有对象有方法 假设有这样一个场景,我接收到一个String型的数据想把它转换为整型,如果没有包装类这个操作是无法完成的,有了包装类我们可以这样做:
String num1 = "123" ;
int num2 = Integer.parseInt(num1);
parseInt就是Integer包装类提供的一个将字符串转成int型的方法。
包装类里面有一些很有用的方法和属性,如HashCode,ParseInt
4.实用上的点就是自动拆箱装箱,但是都为包装类的话,都是引用,需要equals而不是 == 引用比较地址而非值