2011-02-07 35 views
0

我正在開發一個Java任務,在這裏我們以一個日期並以各種方式對它進行一些計算。現在我正在研究一個將使用我的Array的作品。基本上它是一天一個月的清單。 0 1月1日,31日2月1日等...作業:處理日期的Java計算器 - 我的數組是否正確?

根據這些值我的數組看起來是否正確?

這裏是我的數組:

private static int[] cumulDays = {0,31,59,90,120,151,181,212,243,273,304,334}; 

參考Java的轉讓文件: http://www.cs.colostate.edu/~cs161/assignments/PA2/doc/MyUTC.html#cumulDays

cumulDays 私有靜態詮釋[] cumulDays天從 年初的要數開始 一個月(1月1日,2月31日, ...)。你會想要初始化 這個。

+0

你真的是靜態數組的一個不能用計算器和日曆自己仔細檢查一下嗎?即使給你帶來最多2分鐘工作時間的懷疑。 – R0MANARMY 2011-02-07 01:57:24

+0

這當然是閏年不正確的。 – duffymo 2011-02-07 02:04:00

+0

我不認爲在這裏問作業問題是適當的。做這項工作。 – 2011-02-07 02:33:25

回答

1

你的數組值是正確的。但是,作爲Javadoc的任務狀態,「你會想要初始化這個」;你需要考慮到leap years。但是,因爲你基本沒有,許多陣列的可能性,你可以簡單地創建兩個靜態數組

private static int[] CUMUL_DAYS = {0,31,59,90,120,151,181,212,243,273,304,334}; 
private static int[] CUMUL_DAYS_LEAP = {0,31,60,91,121,152,182,213,244,274,305,335}; 

,並根據若年是飛躍與否,返回

1

是的,這是正確的。他的最後一個值是334,因爲零是在1月1日給出的(因爲零點已經過去了)。您可以考慮在12月31日12點累計輸入365值,但這取決於您如何操作日期數據。

根據作業的規格,使用內置的Date class的Java可能會更有益。