永发信息网

求助一个java程序问题

答案:2  悬赏:40  手机版
解决时间 2021-06-03 00:23

public class test {
private int year ;
private int month ;
private int day ;


//用于初始化:构造函数,调用输入
public test(int year, int month, int day) {
setYear(year);
setMonth(month);
setDay(day);
}

//修改日期
public void setYear(int year) {
if(year >= 1000 && year <= 2200)
this.year = year;
else
System.out.println("error.");
}


public void setMonth(int month) {
if(month >= 1 && month <=12)
this.month = month;
else
System.out.println("error.");
}


public void setDay(int day) {
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if(day >= 1 && day <=31)
this.day = day;
else
System.out.println("error."); System.exit(-1);
case 4:
case 6:
case 9:
case 11:
if(day >= 1 && day <=30)
this.day = day;
else
System.out.println("error."); System.exit(-1);
case 2:
if(year%4 == 0){
if(day >= 1 && day <=29)
this.day = day;
else
System.out.println("error."); System.exit(-1);
}
else{
if(day >= 1 && day <=28)
this.day = day;
else
System.out.println("error."); System.exit(-1);
}
}


}

//返回该日期的年\月\日
public int getYear() {
return year;
}

public int getMonth() {
return month;
}

public int getDay() {
return day;
}


//返回描述日期的字符串
public String showDate(){
return(getYear() + "-" + getMonth() + "-" + getDay());
}


public static void main(String[] agrs){
test d1 = new test(2009,3,16);
System.out.println(d1.showDate());
}

}

最佳答案

我不晓得你把代码贴出来搞么事,你也没说明要搞么事,


但是我看出几个错了 if else 不写{}的前提该下面只有一句代码

全部回答

setDay()方法switch没break。

public void setDay(int day) { switch(month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: if(day >= 1 && day <=31) { this.day = day; break; } else { System.out.println("error."); System.exit(-1); } case 4: case 6: case 9: case 11: if(day >= 1 && day <=30) { this.day = day; break; } else { System.out.println("error."); System.exit(-1); } case 2: if(year%4 == 0){ if(day >= 1 && day <=29) { this.day = day; break; } else { System.out.println("error."); System.exit(-1); } } else{ if(day >= 1 && day <=28){ this.day = day; break; } else{ System.out.println("error."); System.exit(-1); } } }

改下可以跑了

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
qq飞车什么c车最好?
十五天的情缘长久吗?
会员预定的QQ号码属于Q行申请 还是属于靓号申
DNF啥子时候正式出第4章
变形金刚3啥时候完工
这个“别”当作何解释?求教,谢谢了
魔兽世界开八十级以后
华硕K41E667vd-SL 的配置谁知道 这机好使么
哪里有“棒棒糖”或者“黑涩会”专卖店?
ML过程中会痒吗?
十堰哪里有较好、权威的典当行?
怎样的事算是幸运?
皮肤中毒怎么办,起一些小水包!
为什么AX100摩托车往化油器吹气就容易起动
请问周祝公路天雄路(上海国际医药园区)怎么到
推荐资讯
口袋妖怪的正确下载地址
孩子上初一了,对英语学习却没有兴趣,该怎么办
QQ牧场每天多少个名额?(VIP3)每天好久刷新一
甲型H1N1变种流感的症状与如何预防
liondrive 支持flash外链么?
唐河县南阳兰州正宗牛肉拉面(星江路)地址在哪
为什么事上总是有那么多的坏人?
但你听到“累了”这两个字的时候,你该会怎么
我家的电脑一打开傲盾就有一些我不明白的东西
你手机不什么不去缴费啊 ,这样就可以发信息
问个属于魔兽的问题吧?
DNF游戏币怎么在5173卖钱?具体说明。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?