我不确定在我的asp.net应用程序中是否正确地做了一些事情。现在我有3个代表货币字段的字段,最多允许2个小数:-
我正在计算这个数值:-
var totalcost = double.Parse(currentItem["OnTimeCost"].ToString()) + (double.Parse(currentItem["MonthlyCost"].ToString()) * 12) + double.Parse(currentItem["AnnualCost"].ToString()); 然后,我比较结果如下:
if( totalcost >= 2000)
{
}
else if (totalcost > 1000)
{
}
//and so on现在我不确定我做得对不对?现在我有3个字段,表示允许小数点2点的货币值。因此,不确定是否将我的值转换为双倍,然后将结果与整数值(2000和1000)进行比较是否是正确和安全的操作?
第二个问题。使用decimal.parse而不是double.parse更好吗?既然十进制更适合财务计算?
发布于 2018-02-24 23:52:25
因此,不确定是否将我的值转换为双倍,然后将结果与整数值(2000和1000)进行比较是否是正确和安全的操作?
是的,很安全。
第二个问题。使用decimal.parse而不是double.parse更好吗?既然十进制更适合财务计算?
如果你在处理金钱问题,那就使用decimal,因为这就是它存在的原因。
https://stackoverflow.com/questions/48968787
复制相似问题