出於某種原因,我得到由函數返回一個一致的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