你的位置:首页 > 软件开发 > Java > Java学习 (十七)、自动装箱和拆箱,枚举类型

Java学习 (十七)、自动装箱和拆箱,枚举类型

发布时间:2016-03-22 23:00:12
自动装箱和拆箱有时需要将int这样的基本类型转换为引用类型对象;基本数据类型的自动装箱,拆箱是J2SE 5.0提供的新功能,为打包基本数据类型提供了方便,但提供方便的同时隐藏了细节,建议在能够区分基本数据类型与引用类型的差别时再使用;一个自动装箱的例子:Integer i=10; ...

自动装箱和拆箱

有时需要将int这样的基本类型转换为引用类型对象;

基本数据类型的自动装箱,拆箱是J2SE 5.0提供的新功能,为打包基本数据类型提供了方便,但提供方便的同时隐藏了细节,建议在能够区分基本数据类型与引用类型的差别时再使用;

一个自动装箱的例子:

Integer i=10;相当于Integer i=new Integer(10);

进行编译时,编译器根据上下文判断是否进行自动装箱动作,在上例中变量i引用的是Integer类的实例;

同样的动作适用于boolean、byte、short、char、long、float、double等基本数据类型,分别使用对应的包装类型Boolean、Byte、Short、Character、Long、Float、Double;

 

J2SE 5.0中也可以自动拆箱,也就是将对象中的基本数据类型信息自动取出;

例如:

 1 Integer m=10; 2 Int n=m; 3 //相当于n=m.intValue(); 

m变量在自动装箱为Integer的实例后,如果被赋值给一个int类型的变量n,则会自动转换为int类型再赋值;

在运算时,也可以进行自动装箱和拆箱;

如:

 1 Integer i=10; 2 System.out.println(i+10); 3 System.out.println(i++); 

 1 public class AutoBoxDemo{ 2   public static void main(String[] args){ 3     int i=10; 4     double d=10.5; 5      6     //把基本类型赋值给引用类型 7     //基本类型会在编译时自动装箱 8     Integer num1=i; 9     Double num2=d;10     System.out.println(num1);11     System.out.println(num2);12     13     //把包装类(引用类型)赋值给基本类型14     //会自动做拆箱15     int j=num1;16     //int j=num1.intValue();17     double dd=num2;18     //int dd=num2.doubleValue();19     System.out.println(j);20     System.out.println(dd);21     22     Object o=i;23     System.out.println(o);24     Integer b=(Integer)o;25     System.out.println(b);26   }27 }

原标题:Java学习 (十七)、自动装箱和拆箱,枚举类型

关键词:JAVA

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。