Java——获取n个工作日后的日期(这里只除去周末)
Posted 执笔记忆的空白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java——获取n个工作日后的日期(这里只除去周末)相关的知识,希望对你有一定的参考价值。
我这里是个简单版的,只是去除周末,对于节假日无法自动掌控,需要配置节假日表,因为中国的节假日是每年定一次。
可以参考:获取n个工作后的日期,排除节假日和调休
我的简单版代码如下:
public static void main(String[] args) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date currDay = sdf.parse("2021-09-7");
System.out.println(getWorkDay(currDay, 30));
}
public static Date getWorkDay(Date startDate, int workDay) {
Calendar c1 = Calendar.getInstance();
c1.setTime(startDate);
for (int i = 0; i < workDay; i++) {
c1.set(Calendar.DATE, c1.get(Calendar.DATE) + 1);
if (Calendar.SATURDAY == c1.get(Calendar.DAY_OF_WEEK)
|| Calendar.SUNDAY == c1.get(Calendar.DAY_OF_WEEK)) {
workDay++;
continue;
}
}
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(df.format(c1.getTime()));
return c1.getTime();
}
以上是关于Java——获取n个工作日后的日期(这里只除去周末)的主要内容,如果未能解决你的问题,请参考以下文章
java 获取n个工作日后的日期(包含法定节假日双休日节后补班)