将一个对象转换为双精度浮点数时,注意到这两种方法。我发现自从1.2版本以来就有了parseDouble方法。如果它与valueOf(s)基本上执行相同的功能,为什么要添加这个方法呢?
parseDouble()
返回一个基本类型的 double
值。而 valueOf()
则返回一个包装类 Double
的实例。在 Java 5 引入自动装箱之前,这是一个非常重要的区别(许多人认为现在仍然如此)。
这是因为两个方法不同。 valueOf()
创建一个Double
对象,而这通常是不必要的。而parseDouble()
则不需要创建对象。使用装箱后,valueOf(String)
也不再需要了,但它仍然保留了向后兼容性。
parseDouble(String s)
,成本更低。 valueOf(String s)
返回一个包装原始double值的Double类。