长期错误估计

Ali*_*mez 3 c#

以下代码中的long数据类型有什么问题,它返回-666167296,time = 42和TimeStyle.Days?

    private long ConvertToMilliSeconds(int time, TimeStyle style)
    {
        long t = 0;
        switch (style)
        {
            case TimeStyle.Millisecons:
                t = time;
                break;
            case TimeStyle.Seconds:
                t = time * 1000;
                break;
            case TimeStyle.Minutes:
                t = time * 1000 * 60;
                break;
            case TimeStyle.Hours:
                t = time * 1000 * 60 * 60;
                break;
            case TimeStyle.Days:
                t = time * 86400000;
                break;
            default:
                break;
        }

        return t;
    }
Run Code Online (Sandbox Code Playgroud)

lep*_*pie 7

timeint,制造long或铸造long* 86400000L