0

0.0.ToString(".####")空の文字列を返すのに返さないのはなぜ0ですか? 適切な出力を得るには、どのフォーマット文字列を使用すればよいですか?

4

2 に答える 2

5

何を求めているのか考えてみてください。小数点の前に必要な数字はなく、小数点のに最大 4 つのオプションの有効数字が必要です。

小数点の前後に有効数字0.0ないため、何も返しません。

適切なフォーマット文字列を提供するには、次の各ケースで期待される出力が必要です。

  • 数値 >= 1
  • 0 から 1 までの数値 (排他的)
  • 0

セクション セパレータを使用して、正の数、負の数、および 0 をどのようにフォーマットするかを明示的に指定できることに注意してください。

0.0.ToString(".####;-.####;0")   // returns "0"

(明示的に 0 をチェックするのではなく) セクション セパレータを使用することの良い点は、書式設定された文字列が 0 と同等である場合に "0" 書式指定子を使用することです。

例えば、

(-0.0000001).ToString(".####;-.####;0")

"0"小さな負の数は、書式指定に基づいて小数点以下 4 桁に丸められるため、が返されます。

于 2013-09-18T15:50:06.287 に答える