将小数百分比转换为int

时间:2017-02-02 15:36:56

标签: c# int double

我有一个方法应该将小数百分比转换为和int 例如0,73应该返回73。 我做了你在下面看到的混乱但是想知道一个“更好”的解决方案。

 private static int ToPercentage(double d)
        {
            string temp = d.ToString("p");
            string temp2 = temp.Replace("%", "");
            double temp3 = Convert.ToDouble(temp2);
            int result = (int) temp3;
            return result;
        }

2 个答案:

答案 0 :(得分:1)

我写这个答案感觉不好,但希望这会阻止所有其他答案并关闭票证。

private static int ToPercentage(double d)
{
    return (int)(d*100);
}

编辑:感谢Devid的建议:) TIL如何回答社区维基帖子!

答案 1 :(得分:0)

试试这段代码。您不需要转换为字符串然后执行替换。

private static int ToPercentage(double d)
    {
       int result = Convert.ToInt32(Math.Truncate(d * 100));
       return result;
    }