装箱和拆箱
- 装箱
- 拆箱
- 注意
- 总结
装箱
定义:
把基本数据类型转换为对应的包装类型
代码演示:
//装箱
Integer i=Integer.valueOf(100);
//自动装箱
Integer ii=100;//等价于:Integer.valueof(100);
拆箱
定义:
把包装类型转换为对应的基本数据类型
代码演示:
//拆箱
ii=ii.intValue()+200;
//自动拆箱
ii+=200;
注意
使用引用类型的变量前,最好先做不为null的判断
代码演示:
Integer iii=null;
iii+=200;
报错原因:
这里iii是空引用,空的引用不指向任何对象,既然没有对象,也就无法调用方法,无法调用intValue()方法,也就无法进行拆箱,也就无法与整数相加
正确代码:
Integer iii=100;
if(iii!=null)
iii+=200;
System.out.println(iii);
总结
在使用包装类类型的时候,如果做操作,最好先判断是否为null
建议只要是对象,在使用前就必须进行不为null的判断