将该点后的位数设置为double

时间:2010-02-20 18:54:11

标签: c# types double

在c#double类型中我如何设置点后的位数,我只需要4。 谢谢。

3 个答案:

答案 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
    //...
  }