一、JDK5的新特性
- 自动装箱:把基本类型转换为包装类类型
- 自动拆箱:把包装类类型转换为基本类型
二、案例演示
public class JDK5 {
public static void main(String[] args) {
// int x = 100;
// Integer i1 = new Integer(x); //将基本数据类型包装成对象,装箱
//
// int y = i1.intValue(); //将对象转换为基本数据类型,拆箱
Integer i2 = 100; //自动装箱,把基本数据类型转换成对象,底层为上述手动装箱
int z = i2 + 200; //自动拆箱,把对象转换为基本数据类型,底层为上述手动拆箱
System.out.println(z);
Integer i3 = null;
int a = i3 + 100; //底层用i3调用intValue,但是i3是null,null调用方法就会出现
System.out.println(a); //空指针异常java.lang.NullPointerException
}
}
三、注意事项
- 在使用时,Integer x = null; 代码就会出现NullPointerException。
- 建议先判断是否为null,然后再使用。
本文详细介绍了JDK5中新增的自动装箱和拆箱特性,通过具体案例展示了如何将基本数据类型自动转换为包装类类型,反之亦然。特别注意在处理可能为null的包装类实例时可能出现的空指针异常。
164

被折叠的 条评论
为什么被折叠?



