首页 > 其他分享 >包装类

包装类

时间:2022-09-02 14:47:59浏览次数:44  
标签:拆箱 包装 数据类型 int n1 Integer 装箱

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

相关文章