工作日时间范围计算:排除节假日与非工作时长
![](https://csdnimg.cn/release/wenkucmsfe/public/img/star.98a08eaa.png)
在Java编程中,"两个日期间计算 除去节假日 非工作时间"这一主题主要关注如何在一个给定的时间段内,精确到分钟地排除掉法定假日以及非工作日(如周六和周日)的日期。该问题的核心是实现一个实用工具类,如`GetWorkDay`,来完成这个任务。以下是一个简化版的代码概述: 1. **日期处理与解析**: 使用`java.text.SimpleDateFormat`对日期进行解析和格式化,例如将字符串"yyyy-MM-dd"转换为`Date`对象。这里定义了一个`SimpleDateFormat`实例`sdf`用于标准化日期格式。 2. **节日列表**: 通过创建一个`ArrayList<Date>`对象`holidays`来存储预定义的节假日,如中国的春节、清明节、劳动节、端午节、国庆节等。代码中列举了部分2015年的假期日期,但可以根据实际需求添加更多的节日。 3. **工作日计算方法**: `GetWorkDay`类中有一个`workday_LR`列表,用于存储有效的工作日日期。`main`方法是程序入口,这里将输入的日期范围与节假日进行比较,以找出工作日。通过`Calendar`类来判断日期是否为工作日,同时考虑到中国的工作日定义通常不包括周六和周日。 4. **排除非工作日**: 使用`Iterator`遍历日期范围内的每一天,对于每个日期,首先检查它是否在节假日列表中。如果不在,则进一步判断是否为周六或周日,若都不是,则将其添加到`workday_LR`列表中。 5. **日期区间处理**: 这个方法可能需要用户提供一个起始日期和结束日期,然后通过循环和条件判断来确定整个区间中的工作日。可以采用递归或迭代的方式,确保所有符合条件的工作日都被正确计算。 6. **输出结果**: 一旦计算出工作日列表,可能需要将其格式化后返回给调用者,或者进行其他后续处理,比如统计工作日总数、生成工作日时间间隔等。 总结来说,这段代码的核心功能是根据给定的日期范围和预设的节假日列表,计算并返回除去节假日和周末的工作日列表,这对于规划项目进度、安排工作计划等场景非常有用。通过这个方法,开发者可以灵活地处理不同时间段的工作时间,满足业务需求。
![](https://csdnimg.cn/release/download_crawler_static/8468521/bg8.jpg)
![](https://csdnimg.cn/release/download_crawler_static/8468521/bg9.jpg)
剩余44页未读,继续阅读
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
- 粉丝: 0
- 资源: 2
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 计算机人脸表情动画技术发展综述
- 关系数据库的关键字搜索技术综述:模型、架构与未来趋势
- 迭代自适应逆滤波在语音情感识别中的应用
- 概念知识树在旅游领域智能分析中的应用
- 构建is-a层次与OWL本体集成:理论与算法
- 基于语义元的相似度计算方法研究:改进与有效性验证
- 网格梯度多密度聚类算法:去噪与高效聚类
- 网格服务工作流动态调度算法PGSWA研究
- 突发事件连锁反应网络模型与应急预警分析
- BA网络上的病毒营销与网站推广仿真研究
- 离散HSMM故障预测模型:有效提升系统状态预测
- 煤矿安全评价:信息融合与可拓理论的应用
- 多维度Petri网工作流模型MD_WFN:统一建模与应用研究
- 面向过程追踪的知识安全描述方法
- 基于收益的软件过程资源调度优化策略
- 多核环境下基于数据流Java的Web服务器优化实现提升性能
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)