合法日期函数实现
作者:
不知名的fE
,
2024-12-24 14:14:50
,
所有人可见
,
阅读 2
static int[] days = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
//判断日期是否合法, d为八位数的数字
static boolean cheek(int d) {
int year = d / 10000;//取出年份
int mouth = d % 10000 / 100;//取出月份
int day = d % 100;//取出日期
if (mouth == 0 || mouth > 12) return false;
if (day == 0 || mouth != 2 && day > days[mouth]) return false;
if (mouth == 2) {//对2进行特判
boolean leap = year % 100 != 0 && year % 4 == 0 || year % 400 == 0;//判断是否是闰年
int t = leap ? days[2] + 1 : days[2];
if (day > t) return false;
}
return true;
}
相关题目
日期问题
回文日期