输入日期返回前一天Java,不可以使用库函数,不可以在控制台输入数据
时间: 2024-12-19 10:17:49 浏览: 4
在Java中,如果你不能使用内置的库函数如`java.time.LocalDate`或`java.util.Calendar`,并且也不允许从控制台接收用户输入,你可以手动创建一个简单的类来表示日期,并通过减去一天来获取前一天的日期。这里是一个示例:
```java
public class DateHelper {
private int day;
private int month;
private int year;
// 构造函数,可以在这里初始化年、月、日
public DateHelper(int day, int month, int year) {
this.day = day;
this.month = month;
this.year = year;
}
// 自定义方法获取前一天的日期
public DateHelper getPreviousDay() {
if (day == 1) { // 如果是第一天,则将月份减一
month--;
if (month == 0) {
month = 12; // 跨越到下一年
year--;
}
} else {
day--; // 减少天数
}
return new DateHelper(day, month, year);
}
// 打印日期,仅作展示用途,实际应用中可以根据需要修改
@Override
public String toString() {
return String.format("%02d-%02d-%04d", day, month, year);
}
}
// 使用示例
public static void main(String[] args) {
DateHelper today = new DateHelper(15, 3, 2023); // 今天是3月15日
DateHelper yesterday = today.getPreviousDay();
System.out.println("Yesterday's date: " + yesterday);
}
```
在这个例子中,我们创建了一个名为`DateHelper`的类,它包含三个私有变量代表日期。然后,我们实现了`getPreviousDay`方法来减少日期。注意这个方法假设月份是从0开始计数的,所以当月份减到0时会自动加1。
阅读全文