我需要从没有小数点的双值中获取数据
本文关键字:获取 数据 小数点 | 更新日期: 2023-09-27 17:57:48
我有一个double
变量,如下所示
double var1 = 0;
而且我有Value = 123.25
。
对于示例var1 += Math.Round(123.25)
,我得到123.0
所以我需要获得如下所示的数据?
输出应为=123
问题不在于数据,而在于字符串转换。double
在123.0和123之间没有区别…它们是完全相同的值,具有相同的位。
因此,与其关注double
值本身,不如看看你是如何使用它的——这是你没有告诉我们的。例如,您可能只想更改正在使用的格式模式。
如何使用:
(int)var1
你需要在哪里展示它的价值?
int someOtherInt = Convert.ToInt32(var1);
基于您的问题。如果您只想要整数值,为什么不将Math.Round()结果分配给类型int?那会得到你想要的。
int x = (int)Math.Round(123.25);
我不明白你为什么不喜欢结尾的.0?如果您打印变量保持123.0,它显示为123。使用调试器时,我只能看到123.0。您是如何使用该值的?如果你能告诉我们,那么如果提供的都对你没有用处,我们可以找到更好的解决方案。
我强烈建议您阅读以下内容:http://www.whathaveyoutried.com
如果你遵循那篇文章中的建议,你很快就能得到解决问题的帮助。
您对类型的混淆。在这种情况下,你不想使用double
,而应该使用int
。
int var1 = 0;
int var2 = (int)123.25;
int output = var1 + var2;
在这种情况下CCD_ 8是123。强制转换为int
消除了对Math.Round
的需要。