自动装箱和拆箱
- 装箱:把基本数据类型转换为对应的包装类类型
- 拆箱:把包装类类型转换为对应的基本数据类型
接下来我们用一段简单的代码来解释自动装箱和拆箱
public class Demo1{
public static void main(String[] args){
Integer integer = Integer.valueOf(520);//装箱
Integer integer1 = 520;//自动装箱
integer1 = integer1.intValue() + 1314;//动作integer1.intValue()将引用类型转换为基本类型,故这个动作为拆箱
//在过程integer1 = integer1 + 1314中
//integer1 + 1314,此时integer1会调用一个intValue方法,使得integer1变成一个基本数据类型,隐藏了自动拆箱
//integer1 = integer1 + 1314全过程中,隐藏了自动装箱的操作
integer1 += 1314;//隐藏了自动拆箱和自动装箱
}
}
值得注意的是:
- 在使用包装类类型的时候,如果做操作,最好先判断是否为NULL,一般情况下,只要是对象,在使用前就必须进行不为null的判断。