在C#中将int与double相乘

时间:2014-05-26 21:52:41

标签: c# int double

我有一个问题,当我试图将int乘以double时。 int是baseSalary和employeeSapary(这是int数组)和 佣金是双常数= .09 我需要在int中获得employeeSalaries但是仍然遇到一个问题,说我不能将int与double相乘。我试图将double转换为int,但在这种情况下,eployeeSalary将始终为baseSalary,因为佣金将始终为0(s *佣金)= 0 如何获得employeeSalaries的有效分数? 谢谢!

private int CalculateAndStoreSalary(int s, int i)

        {
            int.TryParse(txtSales.Text, out s);
            employeeSalaries[i] = baseSalary + (s * commission);          
            return employeeSalaries[i];
        }

1 个答案:

答案 0 :(得分:1)

您可以对其进行舍入,并将其指定为:

employeeSalaries[i] = Convert.ToInt32(Math.Round(baseSalary + (s * commission), 0));

它可能不准确,但类似的东西应该可以做到这一点,你将它四舍五入到最接近的零(或使用Floor或Ceiling来向下/向上舍入),然后在赋值时将其转换为整数。