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
その記事の提案に従えば、すぐに問題を解決するための助けを得ることができます.