Java实现根据当前时间获取本周(工作日)日期(周一~周五或周天)

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Calendar;

public class WorkDay {

    public static void main(String[] args) throws ParseException {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd E");
//        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        // 本周工作日 日期
        for (Date date : getWeekDay()) {
            System.out.println(dateFormat.format(date));
        }
        // 星期一
//        System.out.println(dateFormat.format(getWeekDay()[0]));
        // 星期五
//        System.out.println(dateFormat.format(getWeekDay()[4]));
        // 判断某个日期是否在本周工作日内
//        Date mon = dateFormat.parse(dateFormat.format(getWeekDay()[0]));
//        Date fri = dateFormat.parse(dateFormat.format(getWeekDay()[4]));
//        if (某个日期.compareTo(mon)>=0 && 某个日期.compareTo(fri)<=0) {
//            // 执行方法
//        }
    }

    public static Date[] getWeekDay() {
        Calendar calendar = Calendar.getInstance();
        while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {
            calendar.add(Calendar.DAY_OF_WEEK, -1);
        }
        Date[] dates = new Date[5];  // new Date[7] 星期日
        for (int i = 0; i < 5; i++) {  // i < 7 星期日
            dates[i] = calendar.getTime();
            calendar.add(Calendar.DATE, 1);
        }
        return dates;
    }
}

运行结果:
//new Date[5]
2021-08-09 星期一
2021-08-10 星期二
2021-08-11 星期三
2021-08-12 星期四
2021-08-13 星期五

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值