java对日期的各种操作源代码
需求分析
自定义一个简单的日期类DateType,它具有数据成员y、m、d,用来表示当前日期的年、月、日。而后设计该类欲实现(完成)的功能,进而设计出相应的类成员函数。
输入形式:输入两个日期的年月日。
输出形式:日期输入是否正确,并判断是否日期相同。以及第二个日期增加一天的日期。
程序所能达到的功能:判断日期相同与否,日期的增加。
测试数据:第一组数据: 2008 12 24 2008 12 25
第二组数据: 2008 12 31 2008 12 32
第三组数据: 2008 2 28 2008 2 29
7.2 概要设计
首先定义一个DateType类,其中包括对日期的初始化,判断是否为闰年,判断日期的输入是否正确,对日期进行操作,主要是增加天数,判断两个日期相等与否,打印日期等方法。再定义一个主类进行日期的相关操作。
7.3 详细设计与编码
见上传程序。
7.4 调试分析
在这个程序中,我首先想到的不是用数组来表示月份,以至于整个程序的冗余度比较大。在judgeDate()以及incrementDay()方法中,对整个月份进行分割,把前7个月与后5个月分开讨论。
对于闰年要特别分析,因为闰原文请找腾讯752018766优,文-论'文.网http://www.youerw.com/ 年的2月有29天,而其他的只有28天,因此要先要判断输入的年是否为闰年。在incrementDay()时,要对月份的进位以及年份的进位要注意,因为在每月的最后一天增加天数会影响到最后日期的输出形式。
7.5 用户使用说明
用户根据程序的提示输入适当的值。
7.6 测试数据:
输入 2008 12 24 2008 12 25
输入 2008 12 31 2008 12 32
输入 2008 2 28 2008 2 29
输入 2007 2 29
输入 2008 12 31 2008 12 31
7.7 设计心得:
通过这次实验,让我了解了Java中对日期的操作。在做这道题目时,要注意所有的逻辑约束,对闰年的讨论、日期的正确与否、日期的相等与否。通过这道题目,同时也锻炼了我考虑问题的全面性。1829