1. 有了根本数据类型,为什么还须要包装类型 1.1有些场合不适宜应用根本类型。比方汇合能承受的类型为Object,泛型中也必须应用包装类。比方要定义一个分数。分数为空示意没参加考试。根本类型就不适合了,根本类型默认值为0,而包装类型Integer类型默认为空。 1.2包装类型是一个援用类型,是一个类,有属性和办法。比方想把String类型的数据转换为整型,``
String num1="123";int num2=Integer.parseInt(num1);
parseInt是Integer包装类型提供的一个把字符串转换成int类型的办法。 1.3包装类还有一个重要个性:数据缓存 还是拿Integer来举例,在-128~127区间的数会被缓存,当类加载的时候就创立这256个数对应的对象,并放到名为cache的数组中,调用valueOf()办法时会先判断该数是否在-128~127的区间,如果在则间接获取数组中该对象的援用,如果不在则创立该对象在主动装箱的时候调用的就是valueOf办法。咱们来看上面这段代码:public static void main(String[] args) { Integer num1 = 4; Integer num2 = 4; System.out.println(num1==num2); //trueInteger num1 = 4,这里产生了主动装箱,调用了ValueOf()办法,因为4在-128~127之间所以num1和num2都指向了缓存中的同一地址,所以用==比拟和equls比拟返回的都是true.System.out.println(num1.equals(num2)); //trueInteger num3 = 145; Integer num4 = 145; System.out.println(num3==num4);//false因为145不在-128---127区间内System.out.println(num3.equals(num4));}//true因为145不在这个范畴区间,所以会在堆中生成对象num3和num4别离指向两个不同地址的对象
pojo类中用包装类型,定义局部变量用根本类型