请写出用于Junit测试的NextDay源代码
时间: 2023-08-16 20:05:13 浏览: 164
好的,以下是一个简单的实现NextDay方法的代码示例,可供Junit测试使用:
```java
public class NextDay {
public static Date nextDay(Date date) {
int year = date.getYear();
int month = date.getMonth();
int day = date.getDay();
if (month == 2 && isLeapYear(year)) {
if (day == 29) {
month++;
day = 1;
} else {
day++;
}
} else if (day == daysInMonth(year, month)) {
if (month == 12) {
year++;
month = 1;
day = 1;
} else {
month++;
day = 1;
}
} else {
day++;
}
return new Date(year, month, day);
}
private static boolean isLeapYear(int year) {
if (year % 4 != 0) {
return false;
} else if (year % 100 != 0) {
return true;
} else if (year % 400 != 0) {
return false;
} else {
return true;
}
}
private static int daysInMonth(int year, int month) {
if (month == 2 && isLeapYear(year)) {
return 29;
} else {
return MONTH_DAYS[month - 1];
}
}
private static final int[] MONTH_DAYS = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
}
```
这个实现中,我们使用了一些辅助方法来计算一个月有多少天,以及判断一个年份是否为闰年。在NextDay方法中,我们根据输入的日期计算出下一天的日期,并返回一个新的Date对象。
阅读全文