在Double Object文档中,它只有两个构造函数,一个构造函数使用一个双精度值,另一个构造函数使用一个字符串值。但是,我只是发现,如果我们使用其他Number类型的对象对其进行初始化,它也将起作用。例如,以下代码将起作用:
Integer i = Integer.valueOf(10);
Double d1 = new Double(i);
Long l = Long.valueOf(100);
Double d2 = new Double(l);
所以我想知道这背后是什么?自动装箱/拆箱会在Double / double,Long / long和Integer / int之间进行转换,但是我不明白为什么Double的构造函数会采用其他数据类型。
江户川乱折腾
相关分类