zoukankan      html  css  js  c++  java
  • 2020.8.14

    一、今日学习内容

    日期类的验证:

    定义一个日期类Date,私有数据成员有:int型变量year, month, day。公有函数成员有:

    三个形参均有默认值的构造函数,年月日的默认值依次为1000,1,1;

    int isleap()判断year是否为闰年,若是返回1,否则返回0;

    int check()判断日期是否合法,若合法返回1,否则返回0;

    void setdate()设置year,month,day的值;

    void display()按 “年-月-日”的格式输出日期,判断是否合法,若不合法输出Error Date,若合法,输出是否是闰年的信息;

    复制代码
     1 import java.util.Scanner;
     2 public class Date1 {
     3     private int year,month,day;
     4     Date1(int y,int m,int d){
     5         year=y;
     6         month=m;
     7         day=d;
     8     }
     9     Date1(){
    10         year=1000;
    11         month=1;
    12         day=1;
    13     }
    14     public int isleap() {
    15         if((year%4==0&&year%100!=0)||year%400==0)
    16             return 1;
    17         else 
    18             return 0;
    19     }
    20     public int check() {
    21         if((month==1||month==3||month==5||month==7||month==8||month==10||month==12)&&day<=31)return 1;
    22         else if((month==4||month==6||month==9||month==11)&&day<=30)return 1;
    23         else if(isleap()==1)
    24             {if(month==2&&day<=29)return 1;
    25         else return 0;}
    26         else  if(isleap()==0)
    27         {if(month==2&&day<=28)return 1;
    28         else return 0;}
    29         else return 0;  
    30     }
    31     public void setdate() {
    32         Scanner con=new Scanner(System.in);
    33         System.out.println("请输入年、月、日:");
    34         year=con.nextInt();
    35         month=con.nextInt();
    36         day=con.nextInt();
    37     }
    38     public void display() {
    39         System.out.println(year+"-"+month+"-"+day);
    40         if(check()==0)System.out.println("Error Date!");
    41         if(check()==1)
    42             {if(isleap()==1)System.out.println("闰年!");
    43              else System.out.println("平年!");}
    44     }
    45     public static void main(String[] args) {
    46         Date1[] d=new Date1[3];
    47         d[0]=new Date1();
    48         d[1]=new Date1(2020,5,20);
    49         d[2]=new Date1();
    50         d[2].setdate();
    51         for(int i=0;i<3;i++) {
    52             d[i].display();
    53         }
    54     }
    55 }
    复制代码

     二、遇到的问题

            无

    三、明日计划

            继续完成例题

  • 相关阅读:
    [转]唐骏谈职场 —— 管理者要学会让员工感动
    [转]网站访问量剧增时解决方案
    vbscript:MsgBox参数说明
    验证输入内容是否为数字的简单方法
    页面加载自动跳转页面
    "未能写入输出文件“c:\windows\Microsoft.NET\Framework\v2.0.50727\Temporary AS"的解决办法
    BIND9源码分析奠基
    Trie树详解
    cuckoo hash
    BIND9源码分析之定时器timer
  • 原文地址:https://www.cnblogs.com/marr/p/13580194.html
Copyright © 2011-2022 走看看