Java 作业 习题2 关于日期的三道编程题

  1. 对于任意3个整数,判断其是否为一个合法的日期值?
  2. 给定一个日期值,计算若干天数后的日期值。
  3. 如果有两个日期值,计算它们相距的天数。

 


 

我将这些功能写在了一个类里面。Test_2_6.java

使用Test_2_6_1.java,Test_2_6_2.java,Test_2_6_3.java 来使用Test_2_6.java

 

 

 

  1public class Test_2_6 {   
  2    private int LaterDayCount,LaterCurrentDay;
  3    //判断是否为闰年
  4    public boolean isLeapYear(int year)
  5    {
  6        boolean leap=false;
  7        leap=(year%400==0)|(year%100!=0)&(year%4==0);
  8        return leap;
  9    }

10    //是否是合法日期值
11    public boolean isDate(int year,int month,int day)
12    {
13        boolean isDate=false;
14        if (month>0&&month<13&&year>0&&day>0)
15        {
16            switch (month)
17            {
18                case 1:if (day<32)    break;else return false;               
19                case 2:
20                    if (!isLeapYear(year))//不是闰年
21                    {
22                        if (day<29)    break;else return false;
23                    }

24                    else//闰年
25                    {
26                        if (day<28)    break;else return false;
27                    }

28                case 3:if (day<32)    break;else return false;                   
29                case 4:if (day<31)    break;else return false;
30                case 5:if (day<32)    break;else return false;
31                case 6:if (day<31)    break;else return false;
32                case 7:if (day<31)    break;else return false;
33                case 8:if (day<32)    break;else return false;
34                case 9:if (day<31)    break;else return false;
35                case 10:if (day<32)    break;else return false;
36                case 11:if (day<31)    break;else return false;
37                case 12:if (day<32)    break;else return false;
38            }

39            isDate=true;
40        }

41       
42        return isDate;
43    }

44    public boolean isDate(int year,int month)
45    {
46        boolean isDate=false;
47        if (month>0&&month<13&&year>0) isDate=true;
48        return isDate;
49    }

50    public boolean isDate(int year)
51    {
52        boolean isDate=false;
53        if (year>0) isDate=true;
54        return isDate;
55    }

56    //年历中,从第一天开始到某月的最后一天的天数总数。
57    public int DateCountTable(int year,int month)
58

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值