出于某种原因,我得到由函数返回一个一致的3600:Java - System.currentTimeMillis();不返回差异
private static long getCountdownLeft() {
long now = System.currentTimeMillis();
long elapsedMillis = now - initialTime; //difference of current 'current' time
long millisLeft = secondsOfGame * 1000 - elapsedMillis;
return millisLeft/1000;
}
public static void Main(String[] args) {
System.out.println("Time is " + getCountdownLeft());
}
private static int secondsOfGame = 3600;
private static long initialTime = System.currentTimeMillis();
这是事件驱动的。每次我调用函数时,我都希望看到时间上的差异。我只是用main来表明我正在调用它。
并且您还从静态上下文中获取非静态上下文。所以这是另一个编译问题。我明白'Main'只是为了演示,但是在这里尝试使用代码来让那些想要帮助你的人更容易:) – 2012-08-02 04:24:52
附注:'Main'?这是故意还是错字? – 2012-08-02 04:25:09
w/e主!我为我的懒惰道歉。 – user1513909 2012-08-02 04:26:14