包装器类 自动装箱 取消装箱 这三个名词是什么意思?谁教我一下 应该怎么理解。
Float i = new Folat("3.14f");
Float i = Float.valueOf("3.14f");
这两种写法 有区别吗?

解决方案 »

  1.   

    包装器类是Java对不是所有变量都是对象做的一种补偿,int,long等基础变量都不是对象,但是可以和它们对应的包装型对象进行转换,这种转换在java1.5后就称作自动装箱,因为不需要人为介入了。比如:Integer i = 10;//ok
    int j = i; //ok而在1.5之前是不可以这么做的Integer j = new Integer("10"); //ok
    Integer j = new Integer(10); //ok
    int i = j.intValue();//ok
      

  2.   

    包装器类就是java中元数据类型的对象类(元数据类型有byte、char、int、long、float、double),它们对应的包装器类为(Byte、Character、Integer、Long、Float、Double)
    因为元数据类型不能作为对象看待没有对象所具有的属性和行为(也就是方法),所以针对它们开发了它们的包装类,这些包装类可以被看成是对象。
    自动装箱/拆箱就是从jdk1.5开始提供自动在包装器类和元数据类型间的转换,比如Integer i=1;(在jdk1.5前需要显式地转换,如Integer i=new Integer(1))
      

  3.   

    Integer j = new Integer("10"); //这个是不是装箱?
    int i = 10;//这样就是取消装箱吗?还有
    Float i = new Folat("3.14f");
    Float i = Float.valueOf("3.14f");
    这两种写法 有区别吗?
      

  4.   

    这两种写法没有区别,在内部new Float(String)就是按Float.valueOf(String)来实现的。
      

  5.   

    Integer   j   =   10;   //这个是装箱
    int   i   =   new Integer(10);//这样就是取消装箱 
      

  6.   

    还是有点不明白,JAVA里的 取消装箱  是什么意思啊?能再讲讲吗?