2
嘿我需要做一個程序,倒計時天數/小時/分/秒,直到y2k38我得到的代碼,但我有一個邏輯錯誤,並得到錯誤的數字小時分鐘和秒。我的繼承人代碼:在我的計算y2k38倒計時錯誤
public class Assignment1 {
public static void main(String[] args) {
long now = System.currentTimeMillis();
// The problem will occur at 2^31 seconds
long y2k38 = (long) Math.pow(2, 31)*1000;
// Assigning the time intervals values based on eachother
long diffsec = (y2k38-now)/1000;
long diffmin = diffsec/60;
long diffhours = diffmin/60;
long diffdays = diffhours/24;
// issuing a print statement to output the days,hours..etc until y2k38
System.out.printf(
"%d days\n"+
"%d hours\n"+
"%d minutes\n"+
"%d seconds\n",
(diffdays),(diffmin%60), (diffsec%3600),(diffsec%60));
}
}
有什麼錯誤計算Y2K38價值?你有什麼價值?你期待什麼? – yngwietiger
'diffsec%3600'給你一個從0到3599的值;這真的是你想要打印的「分鐘」? – ajb