Double.valueOf(s)与Double.parseDouble

将Object转换为double并注意到这两种方法。 我看到parseDouble从1.2开始就已经存在了。 为什么添加此方法,如果它基本上与valueOf(s)具有相同的function?

parseDouble()返回一个原始double值。 valueOf()返回包装类Double的实例。 在Java 5引入自动装箱之前,这是一个非常显着的差异(许多人认为它仍然存在)。

因为它不一样。 valueOf()创建一个通常不需要的Double对象。 parseDouble()没有。 使用自动装箱,它不再需要valueOf(String) ,因此是向后兼容的。

如果您只需要值(原始),请使用parseDouble(String s)但成本更低。 valueOf(String s)返回一个Double类,它包装了原始double值。