直接把double赋值给Double和new Double(double有啥区别)

解决方案 »

  1.   

    赋值是给它一个值可以是常量和变量!!
    new 是给它创建一个对象,是一个引用!!
      

  2.   

    直接赋值的话,可以是一个Double的引用,或者一个double的简单类型,(不用担心,它会自己转成Double)
    而new一个Double再赋给它,就是一个Double的引用。
      

  3.   

    double ss= 111.01
    Double sssss= ss;
    Double ssssssss = new Double(ss)
      

  4.   

        public Double(double value) {
    this.value = value;
        }double 是基本类型,Double 是 double 的封装类, 方便了涉及到double 的操作。如果用户未赋值,那么
    Double 的默认值是null, 
    而double 的默认值是0.0
      

  5.   

    是的,
    Double sssss= ss; 完全可以。
    前提是jdk1.5以上。
      

  6.   

    Double sssss= ss;//它直接能转换成一个对象, Double ssssssss = new Double(ss) 这两种方式哪个好呢
      

  7.   

    Double sssss= ss 方式直接转换为Doule 它转换的机制是什么呢?我想知道他怎么转换的
      

  8.   

    new好,能不用自动装箱就不要用
      

  9.   

    也就是说Double sssss = double是自动装箱 
    原理
      

  10.   

    这个是Java里的自动封装机制(auto-boxing),同样也可以自动解包(auto-unboxing)double ss=1231.2342g, sss;
    Double ssss = ss; //auto-boxing
    sss=ssss; //auto-unboxing
      

  11.   


    自动装箱和拆箱
    http://zhq426.javaeye.com/blog/287900给你参考一下。
      

  12.   

     感谢各位基本上理解了,但是我有个疑问,在对Double ss = new Double(double) new 对象;和Double sss = double (装箱) ,这两种方式在产生对象上面,比如说内存占用产生的复杂度上面有啥区别呢,哪个更好,8 楼说 能不用自动装箱就不要用 为什么呢?