double
以下に示すような変数があります
double var1 = 0;
そして、私は持っていValue = 123.25
ます。
たとえばvar1 += Math.Round(123.25)
、私は 123.0 を取得しています
したがって、以下に示すようなデータを取得する必要がありますか?
出力は次のようになります = 123
double
以下に示すような変数があります
double var1 = 0;
そして、私は持っていValue = 123.25
ます。
たとえばvar1 += Math.Round(123.25)
、私は 123.0 を取得しています
したがって、以下に示すようなデータを取得する必要がありますか?
出力は次のようになります = 123
問題はデータではなく、文字列変換にあります。123.0 と 123の間に違いはありませんdouble
...それらはまったく同じ値で、同じビットです。
したがって、double
値自体に注目するのではなく、それをどのように使用しているかに注目する必要があります。たとえば、使用している書式パターンを変更したいだけかもしれません。
使用方法:
(int)var1
その価値を示す必要がある場所はどこですか?
あなたの質問に基づいています。整数値のみが必要な場合は、Math.Round() の結果を int 型に割り当てないのはなぜですか? それはあなたが望むものを手に入れるでしょう。
int x = (int)Math.Round(123.25);
最後の .0 が気に入らない理由がわかりませんか? 123.0 を保持する変数を出力すると、123 と表示されます。デバッガを使用している場合は 123.0 しか表示されません。値をどのように使用していますか?提供されたものがどれも役に立たない場合は、教えていただければ、より良い解決策を見つけることができます.
int someOtherInt = Convert.ToInt32(var1);
あなたはタイプと混同しています。double
あなたはそれの音によってこの状況で使いたくない. 代わりに、を使用してint
ください。
int var1 = 0;
int var2 = (int)123.25;
int output = var1 + var2;
output
この場合は 123 です。 にキャストするとint
、 の必要がなくなりMath.Round
ます。
これを読むことを強くお勧めします: http://www.whathaveyoutried.com
その記事の提案に従えば、すぐに問題を解決するための助けを得ることができます.