输入两个时间,判断时间是否为非工作日,并且是日期否为同一天。是的话返回true,否返回false

  工作遇到这么一个逻辑,前端回传两个时间(必须是两个那一种)。然后,我后端需要判断这两个时间是否为同一天,并且这个时间是否为非工作日,是的话返回true,反之返回false

代码:
package org.example;import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;/*** @author 懒鱼七忆* @date 2023/12/26 14:40*/
public class dateCompare {public static void main(String[] args) {String startTime = "2023-12-23";String endTime = "2023-12-23";boolean isWorkingDays = checkWorkingDays(startTime, endTime);System.out.println("开始时间: " + startTime + "\n" + "结束时间: " + endTime + "\n" + "是否为工作日: " + isWorkingDays);}public static boolean checkWorkingDays(String startTime, String endTime) {// 解析开始时间和结束时间LocalDate startDate = LocalDate.parse(startTime, DateTimeFormatter.ISO_DATE);LocalDate endDate = LocalDate.parse(endTime, DateTimeFormatter.ISO_DATE);//判断日期是否为同一天if (startDate.isEqual(endDate)) {//判断日期是否为非工作日if (isWeekend(startDate)) {return true;}}return false;}//判断日期是否为工作日的方法public static boolean isWeekend(LocalDate date) {DayOfWeek dayOfWeek = date.getDayOfWeek();return dayOfWeek == DayOfWeek.SATURDAY || dayOfWeek == DayOfWeek.SUNDAY;}
}
运行结果:

解析:

   这段代码是用于检查在指定的时间范围内是否有工作日的。让我来逐步解析一下这段代码:

  1.  `public static boolean checkWorkingDays(String startTime, String endTime)`:这是一个公共的静态方法,用于检查指定时间范围内是否存在工作日。它接受两个参数,`startTime` 表示开始时间,`endTime` 表示结束时间。
  2.  `LocalDate startDate = LocalDate.parse(startTime, DateTimeFormatter.ISO_DATE)`:在方法内部,使用 `LocalDate` 类的 `parse` 方法,将输入的 `startTime` 字符串按照 ISO 日期格式(yyyy-MM-dd)解析为 `LocalDate` 对象,用于表示开始日期。
  3.  `LocalDate endDate = LocalDate.parse(endTime, DateTimeFormatter.ISO_DATE)`:同样地,将输入的 `endTime` 字符串按照 ISO 日期格式解析为 `LocalDate` 对象,用于表示结束日期。
  4.  `if (startDate.isEqual(endDate)) { ... }`:判断开始日期和结束日期是否相等。
  5. 当开始日期和结束日期相等时,判断开始日期是否为工作日,调用 `isWeekend` 方法来判断这一天是否为周末,如果是周末则返回 true,表示存在工作日。
  6.  如果开始日期和结束日期不相等,或者开始日期是工作日,则返回 false,表示不存在工作日。
  7. `public static boolean isWeekend(LocalDate date)`:这是一个静态方法,用于判断给定的日期是否为周末(周六或周日),如果是则返回 true。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/579310.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Dialog对话框组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Dialog对话框组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Dialog对话框组件 对话框的使用场景也很高频,比如 APP 上架应…

共享和独享的区别是什么?有必要用独享IP吗?

通俗地讲,共享IP就像乘坐公共汽车一样,您可以到达目的地,但将与其他乘客共享旅程,座位很可能是没有的。独享IP就像坐出租车一样,您可以更快到达目的地,由于车上只有您一个人,座位是您一个人专用…

安卓开发转鸿蒙开发到底有多简单?学习鸿蒙开发有什么价值?

相信各位小伙伴们多多少少都了解过鸿蒙了,有些一知半解而有些已经开始学习起来。那这个鸿蒙到底好不好搞?要不要搞? 据了解安卓反正目前工作感觉不好找,即便是上海这样的大城市也难搞,人员挺饱和的。最近临近年关裁员…

浅谈locust 性能压测使用

1. 基本介绍 Locust是一个开源的负载测试工具,用于模拟大量用户并发访问一个系统或服务,以评估其性能和稳定性。编写语言为Python,可通过Python来自定义构建性能压测场景脚本。Locust支持分 布式负载测试,可以通过多个机器协同工…

张江智荟毁约offer

毕业8年后,找工作被国企歧视学历!已经收到了offer,在入职前一周被通知要撤回offer,拒绝录用,理由居然是他们只要本科211以上的人 这是我今天(2023-12-26)亲身经历的事,听说过面试前…

【树莓派4b的uboot编译移植】

树莓派4b的uboot编译移植 引言 0.1、什么是uboot OS跑起来前,需要的一段引导程序负责部署整个计算机系统,引导操作系统内核启动并给内核传参提供一个命令行界面供人操作是一个开源项目,uboot就是universal bootloader(通用的启…

词法语法语义分析程序设计及实现,包含出错提示和错误恢复

词法说明 (1)关键字 main, int, char, if, else, for, while, void (2)运算符 - * / < < > > ! (3)界符 ; ( ) { } (4)标识符 ID letter(letter|digit)* (5)整型常数 NUM digit digit* (6)空格 ‘ ‘ ‘\n’ ‘\r’ ‘\t’ 空格用来分隔ID,NUM,运算符,界…

正则表达式:元字符

一、什么事元字符 正则是由一系列的元字符组成的&#xff0c;所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符&#xff0c;元字符是构成正则表达式的基本元件。 二、元字符的分类 1.特殊单字符 表达式含义\d匹配任意一个数字\D匹配任意非数字\w匹配任意一个字母、…

算法练习Day20 (Leetcode/Python-回溯算法)

虽然看似进入了一个新章节&#xff0c;但其实还是前几天二叉树章节的延续。。 回溯算法 &#xff08;以下内容摘抄自代码随想录&#xff09;&#xff1a; 回溯法解决的问题都可以抽象为树形结构&#xff0c;是的&#xff0c;我指的是所有回溯法的问题都可以抽象为树形结构&…

云原生Kubernetes:K8S集群版本升级(v1.22.14 - v1.23.14)

目录 一、理论 1.K8S集群升级 2.环境 3.升级集群&#xff08;v1.23.14&#xff09; 4.验证集群&#xff08;v1.23.14&#xff09; 二、实验 1. 环境 2.升级集群&#xff08;v1.23.14&#xff09; 2.验证集群&#xff08;v1.23.14&#xff09; 一、理论 1.K8S集群升级 …

详解视频美颜SDK:算法优化与性能提升

众所周知&#xff0c;视频美颜SDK的算法优化和性能提升至关重要。下文小编将与大家深度探讨视频美颜SDK的算法原理&#xff0c;以及近期的性能优化措施。 一、常见用法 视频美颜SDK对人脸进行识别&#xff0c;并附加适当的美颜效果。例如&#xff1a; 1.识别、关键点 2.肤色…

GLES学习笔记---OpenGL绘制到ImageReader

一、ImageReader简介 ImageReader 之前经常使用在camera应用里面&#xff0c;创建一个ImageReader&#xff0c;然后获取surface&#xff0c;配流和下发request时候将surface下发给framework&#xff0c;中间具体对ImageReader做了什么没有具体研究过&#xff0c;等到Hal层came…

MYSQL数据库的备份与恢复-数据库实验七

一、实验目的 1. 了解备份和恢复的基本概念。 2. 掌握使用MySQL命令进行数据库备份的操作方法。 3. 掌握使用MySQL命令进行数据库恢复的操作方法。 二、实验内容 1. 使用mysqldump命令备份数据库studentsdb的所有表&#xff0c;存于D:\下&#xff0c;文件名为all_tables.s…

C#与php自定义数据流传输

C#与php自定义数据流传输 介绍一、客户端与服务器数据传输流程图客户端发送数据给服务器&#xff1a;服务器返回数据给客户端&#xff1a; 二、自定义数据流C#版本数据流PHP版本数据流 三、数据传输测试1.在Unity中创建一个C#脚本NetWorkManager.cs2.服务器www目录创建StreamTe…

华清远见嵌入式学习——ARM——作业4

作业要求&#xff1a; 代码运行效果图&#xff1a; 代码&#xff1a; do_irq.c: #include "key_it.h" extern void printf(const char *fmt, ...); unsigned int i 0;//延时函数 void delay(int ms) {int i,j;for(i0;i<ms;i){for(j0;j<2000;j);} }void do_i…

基于AR+地图导航的景区智慧导览设计

随着科技的飞速发展&#xff0c;智慧旅游已经成为现代旅游业的一个重要趋势。在这个背景下&#xff0c;景区智慧导览作为智慧旅游的核心组成部分&#xff0c;正逐渐受到越来越多游客的青睐。本文将深入探讨地图导航软件在景区智慧导览中的应用&#xff0c;并分析其为游客和景区…

【JavaWeb学习笔记】18 - 文件上传下载

项目代码 https://github.com/yinhai1114/JavaWeb_LearningCode/tree/main/fileupdown 目录 文件上传 一、基本介绍 二、文件上传的基本原理 ​编辑 三、文件上传应用实例 四、文件上传的注意细节 1.解决中文乱码问题 2.分割文件夹 3.防止重名 4.百度WebUploader 5.空…

redis 从0到1完整学习 (七):ZipList 数据结构

文章目录 1. 引言2. redis 源码下载3. zipList 数据结构3.1 整体3.2 entry 数据结构分析3.3 连锁更新 4. 参考 1. 引言 前情提要&#xff1a; 《redis 从0到1完整学习 &#xff08;一&#xff09;&#xff1a;安装&初识 redis》 《redis 从0到1完整学习 &#xff08;二&am…

常用API:Object

Object Object类的作用&#xff1a; Object类是Java中所有类的祖宗类&#xff0c;因此&#xff0c;Java中所有的对象都可以直接使用Object类中提供的一些方法。 Object类的常见方法 方法名说明public String toString&#xff08;&#xff09;返回对象的字符串表示形式publi…

kubernetes -pod 实践

一、资源与对象 1、pod 容器都是由镜像启动的,但在容器外面会包裹通过Pod将容器包裹起来这个是K8s的概念,在这个Pod里面可以有一个或多个容器,那这个Pod的有什么特征呢 Pod里的所有容器都会调度在同一个节点上运行0。Pod中的所有容器会共享同一网络,它们有一个唯一的IP,…