2012-12-02 170 views
1

obj.date是Unix時間戳(長)。我檢查的日期是正確的,但我不能設法得到我的兩個日期對象之間分鐘的差別。例如,當我預計接近30時,我得到4。爲什麼?分鐘日期之間2

Date now = new Date(); 
Date then = new Date((long)obj.date*1000); 

int secondsbetweendates = (int) ((then.getTime()-now.getTime())/1000); 

int minutesbetweendates = (secondsbetweendates/1000) % 60; 
+0

不應該是'int minutesbetweendates = secondsbetweendates%60;'? –

+0

你正在使用模數,你應該分開...... –

回答

3

要秒轉換爲可以除以60分鐘:

int minutesbetweendates = secondsbetweendates/60; 

注意它返回一個整數,截斷的結果,也就是說,只有完整分鐘就會被計算在內。換句話說,119秒將變成1分鐘,而不是2.

您還應該意識到,如果時間差超過一個小時,它也可以返回大於60的數字。