我写了一个方法来将给定数字从天转换为毫秒:
private long expireTimeInMilliseconds;
...
public void setExpireTimeInDays(int expireTimeInDays)
{
expireTimeInMilliseconds = expireTimeInDays * 24 * 60 * 60 * 1000;
}
Run Code Online (Sandbox Code Playgroud)
我很难弄明白我做错了什么.现在我的问题是: 这个错误是如此明显吗?
纠正方法:
private long expireTimeInMilliseconds;
...
public void setExpireTimeInDays(int expireTimeInDays)
{
expireTimeInMilliseconds = ((long) expireTimeInDays) * 24 * 60 * 60 * 1000;
}
Run Code Online (Sandbox Code Playgroud)
如果我在计算之前没有将整数转换为long,那么我得到一个完全错误的结果.