を作成した方法に応じて異なります。は、.NET小数点値をフォーマットすると、次のC#のコードを見てみましょう、それが
decimal value1 = 1234M;
decimal value2 = 1234.00M;
Console.WriteLine(value1 == value2); // True
Console.WriteLine(value1); // 1234
Console.WriteLine(value2); // 1234.00
それらが異なる(異なるフォーマットさせることがvalue1
とvalue2
の違いは何ですか小数点以下の桁数)?
これらは同じ値なので、同じようにフォーマットされると思います。 value2
は何とか私が小数点以下2桁で作成したどこかに保存しますか?はいの場合は、どうすればそれを見て変更できますか?
、それが価値で有効桁数を追跡することができ、 。 floatとdoubleとはまったく異なります。したがって、小数部に桁数を指定しなければ、正確であると分かっている数だけ表示されます。 –
「私は彼らが同じ方法でフォーマットされていると思うよ」どちらの方法で期待しますか?最初の値に有効数字を追加したり、2番目の値から削除したりすると思いますか? –
@DStanley 2つの値が等しい場合、同じ値をとる必要があります。彼らが一貫している限り、彼らがどのようにフォーマットされているかは本当に気にしません。これは予期しないことです。私は実際にそれを行うまで、小数の値がどのようにフォーマットされるのか知る方法がないように感じます。それが私に任せられていれば、浮動小数点型と同じようにデフォルトの書式設定を行い、重要でないゼロをすべて削除します。 –