[英]Combine two integers (one containing the integer part, the other the decimal part) into a floating point number
如何通过组合两个整数来生成double
值? 我已经尝试过搜索,但找不到我正在寻找的答案。
它是这样的:
int wholeNumber = 2;
int decimal = 25;
我想double
结果为2.25
。
作弊解决方案是这样的:
string number = wholeNumber + "." + decimal
double doubleNumber = Double.Parse(number);
干净的解决方案将涉及检查“十进制”中有多少个值,除以 10^amount 并添加它们
正如所指出的 - 十进制分隔符是特定于文化的 - 所以完全正确的版本是
string number = wholeNumber + System.Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator + decimal
double doubleNumber = Double.Parse(number);
(我保留最前面的,因为它更容易理解)
或者......只使用数学:
double d = wholeNumber + (double)decimal / 100;
严重地...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.