JAVA实验二

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、类的定义和使用

定义一个满足如下要求的 Date 类:

a. 用下面的格式输出日期:日/月/年

b. 可运行在日期上加一天操作

c. 设置日期

用该类编写一个显示当前日期的程序。

import java.io.*;

class Mydate

{

int day;

int month;

int year;

void setdate(int d,int m,int y)//设置日期

{

day=d;month=m;year=y;

}

void addday()//加一天的操作

{

if(month==12&&day==31)

{

year++;month=1;day=1;return;

}//年底进入下一年

if(Quan.symble==1&&month==2&&day==29)

{

month=3;day=1;return;

}//2月29号得闰年进入3月

if(Quan.symble==0&&month==2&&day==28)

{

month=3;day=1;return;

}//2月28号得非闰年进入3月

switch(month)

{

case 1: case 3: case 5: case 7: case 8: case 10: case 12:

{ if(day==31)

{ month=month+1;day=1;}

else

day=day+1;break;

}

default:{ if(day==30)

{ month=month+1;day=1;}

else

day=day+1;break;

}

}

}

void outdate()//输出日期

{

System.out.println(day+"/"+month+"/"+year);

}

public static void main( String args[]) throws java.io.IOException//主函数

{

Mydate date=new Mydate();

String s;

int d,y,m;

System.out.println("请输入当前日期");

System.out.println("年:");

BufferedReader keyin=new BufferedReader(new InputStreamReader(System.in));

s=keyin.readLine();

y=Integer.parseInt(s);

L1:

for(;;)

{

System.out.println("月:");

s=keyin.readLine();

m=Integer.parseInt(s);

if(m<1||m>12)

{

System.out.println("月份无效,请重新输入:");continue L1;

}

else break L1;

}

L2:

for(;;)

{

System.out.println("日:");

s=keyin.readLine();

d=Integer.parseInt(s);

switch(m)

{

case 1: case 3: case 5: case 7: case 8: case 10: case 12:

{ if(d<1||d>31)

{

System.out.println("日期无效,请重新输入:");continue L2;

}

else break L2;

}

default:{ if(m!=2&&(d<1||d>30)||(m==2&&(d<1||d>29))||(m==2&&(d<1||d>28)))

{

System.out.println("日期无效,请重新输入:");continue L2;

}

else break L2;

}

}

}

date.setdate(d,m,y);

System.out.println("显示当前日期:");

date.outdate();

L:

for(;;)

{

System.in.read();//暂停作用

char t='0';

System.out.println("如果加一天请输入1,否则输入0:");

System.in.skip(2);

t=(char)System.in.read();

if(t=='1')

{

date.addday();

System.out.println("加一天操作后的日期为:");

date.outdate();

continue L;

}

else

if(t=='0') break L;

}

}

}

实验结果:

相关文档
最新文档