我正在使用毫秒在Java中進行一些日期計算。我沒有太多的毫秒工作經驗,甚至無法確定一年有多少毫秒。這裏是我的嘗試:Java中的毫秒數
private static final int MILLIS_IN_SECOND = 1000;
private static final int SECONDS_IN_MINUTE = 60;
private static final int MINUTES_IN_HOUR = 60;
private static final int HOURS_IN_DAY = 24;
private static final int DAYS_IN_YEAR = 365; //I know this value is more like 365.24...
private static final long MILLISECONDS_IN_YEAR = MILLIS_IN_SECOND * SECONDS_IN_MINUTE * MINUTES_IN_HOUR * HOURS_IN_DAY * DAYS_IN_YEAR;
System.out.println(MILLISECONDS_IN_YEAR); //Returns 1471228928
我知道這1年= 31556952000毫秒,所以我的乘法是關閉莫名其妙。
任何人都可以指出我做錯了什麼?我應該使用很長時間嗎?
爲什麼不試試呢?或者查看32位有符號整數的最大值是多少? – 2012-02-04 15:18:28
@Dave Newton我試過了,代碼返回一個我知道不正確的值。一個int在一年中的工作時間爲毫秒,但是我正在計算錯誤的值。 – 2012-02-04 15:21:04
想必閏年是無關緊要的... – 2012-02-04 16:01:37