Десятичный формат и двойники - PullRequest
0 голосов
/ 29 апреля 2009

DecimalFormat синтаксический анализ Double.toString () представление (может быть в научном и финансовом формате).

Почему Sun выбрала этот подход вместо прямого преобразования double в String?

PS: Чтобы быть более конкретным. Почему DecimalFormat внутренне использует Double.toString () для форматирования Double вместо форматирования внутреннего представления самого Double?

Ответы [ 5 ]

2 голосов
/ 29 апреля 2009

DecimalFormat дает вам больше контроля над форматом, позволяя задать ему шаблон форматирования.

0 голосов
/ 24 мая 2009

Возможно, Солнце следует СУХИМ принципам.

0 голосов
/ 29 апреля 2009

Для финансовых приложений используйте вместо этого BigDecimal, который дает вам контроль над режимами округления и точностью.

0 голосов
/ 29 апреля 2009

Я не уверен, что вы подразумеваете под "прямым преобразованием", но toString() всегда только отладочная информация! Вы не должны использовать его для отображения значений в веб-интерфейсе. Используйте DecimalFormat для разбора и форматирования!

0 голосов
/ 29 апреля 2009

может быть, он спрашивает, как «Double.toString (withSomeParameters)» сделает работу вместо использования DecimalFormat.

Я думаю, что причина может быть i18n. в некоторых местах вы можете набрать 1800,39 .. а в другом месте вы можете набрать 1,800,39

...