我知道如果我们想要将double
显示为两位十进制数字,则必须使用
public void DisplayTwoDecimal(double dbValue)
{
Console.WriteLine(dbValue.ToString("0.00"));
}
但是如何将此扩展到N
小数位,其中N
由用户决定?
public void DisplayNDecimal(double dbValue, int nDecimal)
{
// how to display
}
答案 0 :(得分:54)
将“Nx”用于x十进制数字。
public void DisplayNDecimal(double dbValue, int nDecimal)
{
Console.WriteLine(dbValue.ToString("N" + nDecimal));
}
答案 1 :(得分:-3)
我会用这个:
public string DisplayNDecimal(double dbValue, int nDecimal)
{
string decimalPoints = "0";
if (nDecimal > 0)
{
decimalPoints += ".";
for (int i = 0; i < nDecimal; i++)
decimalPoints += "0";
}
return dbValue.ToString(decimalPoints);
}
:)
这是StringBuilder
(尽管可能效率不高,肯定需要更多资源)
public string DisplayNDecimal(double dbValue, int nDecimal)
{
StringBuilder decimalPoints = new StringBuilder("0");
if (nDecimal > 0)
{
decimalPoints.Append(".");
for (int i = 0; i < nDecimal; i++)
decimalPoints.Append("0");
}
return dbValue.ToString(decimalPoints.ToString());
}