J2SE 5.0实例---原生类型的autoboxing和auto-unboxing

80酷酷网    80kuku.com

  j2se原生类型的autoboxing和auto-unboxing
我们知道,在Java中,int,long等原生类型不是一个继承自Object的类,所以相应的,有很多操作我们都不能利用原生类型操作,比如想要把一个整数放入到一个集合中,我们必须首先创建一个Integer对象,然后再将这个对象放入到集合中。当我们从集合中取数的时候,取出来的是一个Integer对象,因此不能直接对它使用加减乘除等运算符,而是必须用Integer.intValue()取到相应的值才可以,这样的过程称之为boxing和unboxing。

J2SE5.0支持autoboxing和auto-unboxing,也就是说我们以后不需要再手动地做这些boxing和unboxing操作了,java语言会替我们完成。具体可以参照下面的示例:

List<Integer> intList=new ArrayList<Integer>();



intList.add(2);



intList.add(new Integer(5));



int i=3+intList.get(0);//i=5



int j=3+intList.get(1); //j=8

从这一段程序中我们可以看到,autoboxing和auto-unboxing为我们省掉了很多不必要的工作。



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: