使用java写一个传入当前日期Date类型,获得前7天的日期
时间: 2024-05-09 19:19:26 浏览: 79
以下是使用Java编写的获取前7天日期的代码:
```java
import java.util.Calendar;
import java.util.Date;
public class DateUtil {
public static Date getPreviousWeekDate(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -7);
return calendar.getTime();
}
}
```
使用示例:
```java
Date currentDate = new Date();
Date previousWeekDate = DateUtil.getPreviousWeekDate(currentDate);
System.out.println(previousWeekDate);
```
输出结果为前7天的日期。
相关问题
java写一个方法 参数是date类型 ,返回7天前的日期 返回值也是date类型
可以使用Java中的Calendar类来实现。以下是示例代码:
```java
import java.util.Calendar;
import java.util.Date;
public class DateUtil {
public static Date getOneWeekAgo(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_YEAR, -7);
return calendar.getTime();
}
}
```
在上面的代码中,我们使用了`Calendar`类来将传入的日期往前推7天,并返回推算后的日期。我们可以在其他地方调用这个方法来获取7天前的日期,如下所示:
```java
Date today = new Date();
Date oneWeekAgo = DateUtil.getOneWeekAgo(today);
```
这样,`oneWeekAgo`就是当前日期往前推7天后的日期了。
用java 编写,根据传入的Date格式输出当前日期的第一个工作日,法定节假日不属于工作日
你好,根据你的要求,我会回答你的问题。
以下是Java代码,可用于输出当前日期的第一个工作日(法定节假日不属于工作日):
```
import java.util.Calendar;
import java.util.Date;
public class FirstWorkday {
public static void main(String[] args) {
Date date = new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
// 循环找到第一个工作日
while (true) {
// 获取当前日期的星期几
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
// 判断当前日期是否为周六或周日或法定节假日
if (dayOfWeek == Calendar.SATURDAY || dayOfWeek == Calendar.SUNDAY || isHoliday(calendar)) {
// 如果是周六或周日或法定节假日,则将日期加1天
calendar.add(Calendar.DAY_OF_MONTH, 1);
} else {
// 如果是工作日,则输出日期并结束循环
System.out.println(calendar.getTime());
break;
}
}
}
// 判断指定日期是否为法定节假日
private static boolean isHoliday(Calendar calendar) {
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DAY_OF_MONTH);
// 这里需要根据实际情况自行实现法定节假日的判断逻辑,以下只是示例代码
if (month == 1 && day == 1) {
return true; // 元旦节
} else if (month == 5 && day == 1) {
return true; // 劳动节
} else if (month == 10 && (day == 1 || day == 2 || day == 3 || day == 4 || day == 5 || day == 6 || day == 7)) {
return true; // 国庆节
} else {
return false;
}
}
}
```
该代码会循环判断当前日期是否为周六或周日或法定节假日,如果是则将日期加1天,直到找到第一个工作日为止。请注意,这里的法定节假日判断逻辑仅为示例代码,如需实际应用需根据实际情况进行修改。
阅读全文