在c#double类型中我如何设置点后的位数,我只需要4。 谢谢。
答案 0 :(得分:6)
你做不到。 Binary floating point不能那样运作。您可以格式化这样的双重格式(例如,使用"f4"
作为格式字符串),但是如果您正在处理具有十进制的自然数的值那些地方,你可能应该使用decimal
代替。您能否向我们提供有关您的价值观代表什么的更多信息?
答案 1 :(得分:3)
您无法直接在双精度点之后设置位数。
您可以使用格式字符串更改double的字符串表示形式。
一个例子是:
string.Format("{0:0.####}", number);
或者Jon Skeet指出:
number.ToString("f4")
答案 2 :(得分:2)
用它来比较两个浮点数到分数中的4位数:
if (Math.Abs(a - b) < 1E-4) {
// close enough
//...
}