写一段JAVA代码判断日期格式是否正确
写一段JAVA代码判断日期格式是否正确
日期靠以下语句输入
int year = input.nextInt();
int month = input.nextInt();
int day = input.nextInt();
写语句判断日期是否正确,比如说,当月份输入9月时,日大于30就不成立,同样,若是闰年,2月可以有29日
static public boolean isValidDate(
int year, int mon, int day,
short year_min,short year_max,
StringBuffer msg)
{
if(year<year_min || year>year_max)
{
msg.append("年份必须在("+
year_min+"~"+year_max+
")之间,输入值("+year+")无效\n");
return false;
}else if(mon<1 || mon>12){
msg.append("月份必须在(1~12)之间,输入值("+mon+")无效\n");
return false;
}else if(day<1 || day>31){
msg.append("日号必须在(1~31)之间,输入耐罩拿值("+day+")无效\n");
return false;
}else if(mon==2){
if(isLeapYear(year) && day>29){
msg.append("闰年的闰二月昌搭日号必须在(1~29)之间,"+year+"是闰年,输入值("闷誉+day+")无效\n");
return false;
}else if(day>28){
msg.append("非闰年的闰二月的日号必须在(1~28)之间,"+year+"不是闰年,输入值("+day+")无效\n");
return false;
}
}
return true;
}
//闰年
static public boolean isLeapYear(int year){
return (year%4==0 && year%100!=0)|| year%400==0;
}
正则表达式