1、包装类数据类型以及继承关系
包装类就是对基本数据类型的一个扩展。基本数据类型不可称为对象,包装类型是对象。
boolean -> Boolean char -> Character //以下都是number的子类 byte -> Byte int -> Integer long -> Long float -> Float double -> Double short -> Short
Character
Boolean
Byte、Integer、Long、Float、Double、Short
2、自动拆箱和装箱
这里很多地方之所以不报错是因为:有了类的特点就可以调用类的方法。
//jdk4前使用的是手动装箱拆箱 int n1 = 100; //装箱: Integer integer = new Integer(n1); Integer integer1 = Integer.valueOf(n1); //拆箱: n1 = integer1; //这里对象怎么可能会赋给一个基本数据类型呢?答案是:有了类的特点就可以调用类的方法。 int intValue = integer.intValue(); //jdk5后底层实现了自动拆箱和装箱 int n2 = 100; //装箱: /*public static Integer valueOf(int i) { if (i >= Integer.IntegerCache.low && i <= Integer.IntegerCache.high) return Integer.IntegerCache.cache[i + (-Integer.IntegerCache.low)]; return new Integer(i); }*/ Integer in1 = n2; //底层还是用的 Integer.valueOf() 方法来实现的 //拆箱 /* public Integer(int value) { this.value = value; }*/ n2 = new Integer(10); //底层是integer.intValue()方法实现的拆箱
标签:拆箱,包装,数据类型,int,n1,Integer,装箱 From: https://www.cnblogs.com/Zz198/p/16649794.html