2011-02-07 59 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可能会更有益。