0

DecimalFormatは、Double.toString()表現を解析します (科学的および財務的な形式である可能性があります)。

double を String に直接変換する代わりに、Sun がこのアプローチを選択したのはなぜですか?

PS: より具体的に。Double自体の内部表現をフォーマットするのではなく、Doubleをフォーマットするために、DecimalFormatが内部的にDouble.toString()を使用するのはなぜですか?

4

5 に答える 5

2

DecimalFormat を使用すると、書式設定パターンを指定できるため、書式をより詳細に制御できます。

于 2009-04-29T04:34:32.090 に答える
0

おそらく、Sun はDRYの原則に従っています。

于 2009-05-23T23:11:08.007 に答える
0

彼は、「Double.toString(withSomeParameters)」が DecimalFormat を使用する代わりに仕事をするように尋ねるかもしれません。

理由は i18n かもしれません。1,800.39 と入力できる場所もあれば、1.800,39 と入力できる場所もあります。

于 2009-04-29T04:54:26.023 に答える
0

「直接変換」の意味がわかりませんが、toString()常にデバッグ情報のみです! フロントエンドで値を表示するために使用しないでください。DecimalFormat解析とフォーマットに使用してください!

于 2009-04-29T07:49:38.940 に答える
-1

金融アプリケーションの場合は、丸めモードと精度を制御できる BigDecimal を代わりに使用してください。

于 2009-04-29T09:04:01.117 に答える