DecimalFormat解析Double.toString()代表(可能是科学和财务格式)。
为什么Sun选择了这种方法,而不是直接将double转换为String?
PS: 更具体。为什么DecimalFormat内部使用Double.toString()来格式化Double,而不是格式化Double本身的内部表示?
答案 0 :(得分:2)
DecimalFormat允许您为其提供格式化模式,从而为您提供更多的格式控制。
答案 1 :(得分:0)
可能会像“Double.toString(withSomeParameters)”那样,而不是使用DecimalFormat。
我认为原因可能是i18n。在某些地方你可以键入1,800.39 ..而在其他地方你可以输入1.800,39
答案 2 :(得分:0)
我不是说“直接转换”的意思,但toString()
始终只是调试信息!您不应该使用它来显示前端中的值。使用DecimalFormat
进行解析和格式化!
答案 3 :(得分:0)
也许Sun遵循DRY原则。
答案 4 :(得分:-1)
对于财务应用程序,请改用BigDecimal,以便控制舍入模式和精度。