小数点后只需要2位
本文关键字:2位 小数点 | 更新日期: 2023-09-27 18:02:48
我希望我的函数返回值只有2位小数。我尝试了以下代码:
private static double CalculateSlabTax(int nSlabStartTaxable,
int nSlabEndTaxable,
float fSlabRate)
{
double dblSlabResult = 0;
try
{
dblSlabResult = (nSlabStartTaxable - nSlabEndTaxable) * fSlabRate;
dblSlabResult = Math.Round(dblSlabResult , 2);
return dblSlabResult;
}
catch (Exception)
{
return -1;
}
}
期望输出为:dblSlabResult = ####.##
- 两位数字(例如;1002.05
)
得到如下输出:dblSlabResult = 1002.1
非常简单。试试这个
public double UptoTwoDecimalPoints(double num)
{
var totalCost = Convert.ToDouble(String.Format("{0:0.00}", num));
return totalCost;
}
表示使用格式。在您的情况下,小数点后的两个数字表示"F2"
格式字符串
double source = 1234.56789;
// 1234.57
var result = source.ToString("F2");
#
字符是可选的数字占位符。使用0
在转换为字符串时强制使用数字:
string.Format("{0:#.##}", 1002.1) == "1002.1"
string.Format("{0:0.00}", 1002.1) == "1002.10"
当四舍五入float
或double
时,不要期望得到特定的数字计数。它们只是数字,与字符串格式无关。
您使用的是什么输入?数学。Round应该可以正常工作,这表明上面这行返回的是一个只有1个有效数字的double。