型サフィックスを使用せずに、小数点付きの数値を 10 進数型に直接割り当てることができないのはなぜですか? この種の数値は 10 進数型の数値とは見なされないのですか?
decimal bankBalance = 3433.20; // ERROR!
ベストアンサー1
編集: 質問の最後の部分を見逃した可能性がありますので、以下の概要はほとんど役に立ちません。
とにかく、あなたがしようとしていることができない理由は、浮動小数点型と の間に暗黙的な変換がないためですdecimal
。ただし、int から 10 進数への暗黙的な変換があるため、整数から割り当てることはできます。
可能ですが、この構文を使用する必要があります (または、明示的に 10 進数にキャストする必要があります)。
decimal bankBalance = 3433.20m;
そしてフロートの場合は
float bankBalance = 3433.20f;
デフォルトはダブル
double bankBalance = 3444.20;