0

価値

double value = 345.12345;

文字列形式 1

String str = String.format("%.02f", value);

文字列形式 2

String str = String.format("%.2f", value);

どちらも同じ値 345.12 を出力します。それで、これら2つの違いは何ですか?

4

2 に答える 2

6

0プレフィックス表記は、小数部ではなく整数部でのみ機能します。代わりに%07.2fと言った場合、値は0345.12と表示されます。

于 2013-03-07T18:23:11.703 に答える
3

フォーマット指定子の構文は次のとおりです。

%[argument_index$][flags][width][.precision]conversion

precision02最初のケースと22 番目のケースにありますが、これらは同じ数であるため、出力は同じであることに注意してください。したがって"%.02f"、 と"%.2f"は同じです。

しかし、もしあなたが書いたなら%02f、それflags0(「幅までのゼロパッド出力」) でありwidth2. 次に、出力は指定された幅までゼロで埋められます。

于 2013-03-07T18:26:00.040 に答える