LocalDateTime应用比较日期
//需求1:当天的日期且时间在9~24点之间的开始时间
LocalDateTime nowTime= LocalDateTime.now();
int year = nowTime.getYear();
int month = nowTime.getMonthValue();
int day = nowTime.getDayOfMonth();
System.out.println("year=" + year);
System.out.println("month=" + month);
System.out.println("day=" + day); // nowTime.withHour(9);
// System.out.println("nowTime=" + nowTime ); LocalDateTime rentTime = LocalDateTime.of(2023, 3, 2, 9, 00, 00); int rentTimeyear = rentTime.getYear();
int rentTimemonth = rentTime.getMonthValue();
int rentTimeday = rentTime.getDayOfMonth();
int rentTimeHour = rentTime.getHour();
System.out.println("year=" + rentTimeyear);
System.out.println("month=" + rentTimemonth);
System.out.println("day=" + rentTimeday);
System.out.println("rentTimeHour=" + rentTimeHour); //方法1:比较年月日int ,然后取小时数判断
if(year == rentTimeyear && month == rentTimemonth && day == rentTimeday){
System.out.println("日期符合");
if(rentTimeHour >= 9 && rentTimeHour <= 24){
System.out.println("小时符合");
}else {
System.out.println("小时不符合");
} }else{
System.out.println("日期不符合");
} System.out.println("-------------------------------------------");
//方法2:通过localdatetime 来比较,设置localtime解决
LocalDate ld = LocalDate.now();
// LocalDateTime ldt1 = ld.atTime(8,59,59);
// LocalDateTime ldt2 = ld.atTime(23,59,59);
// System.out.println("ldt1="+ldt1);
// System.out.println("ldt2="+ldt2); // Localtime转为 LocalDateTime
LocalTime lt1 = LocalTime.of(8,59,59);
LocalTime lt2 = LocalTime.of(23,59,59);
LocalDateTime ldt1 = ld.atTime(lt1);
LocalDateTime ldt2 = ld.atTime(lt2); System.out.println("ldt1="+ldt1);
System.out.println("ldt2="+ldt2); // LocalDateTime localDateTime = LocalTime.now().atDate(LocalDate.now()); /**
* 对于 date1.isAfter(date2) 代表的意思是, 检查 date1 是否在 date2 日期之后。
* 对于 date1.isBefore(date2) 代表的意思是,检查date1 是否在 date2 日期之前。
*/
//含等于 rentTime.isEqual(ldt1) || 可以调整参考对象
if(rentTime.isAfter(ldt1) && rentTime.isBefore(ldt2)){
System.out.println("-------------符合要求");
}else{
System.out.println("不符合要求");
} //需求2:判断当前时间跟开始时间的比较,是否在距离开始时间4小时内
LocalDateTime rentTime2 = LocalDateTime.of(2023, 3, 13, 19, 53, 00);
LocalDateTime now = LocalDateTime.now();
LocalDateTime rentTimeBefore4Hours = rentTime2.plusHours(-4);
//4小时内
if(now.isAfter(rentTimeBefore4Hours)){
//券核销
System.out.println("4小时内");
}else{
System.out.println("4小时外");
}
LocalDateTime应用比较日期的更多相关文章
- LocalDateTime与mysql日期类型的交互(基于mybatis)
众所周知,在实体Entity里面,可以使用Java.sql.Date.java.sql.Timestamp.java.util.Date来映射到数据库的date.timestamp.datetime等 ...
- [Java]Java日期及时间库插件 -- Joda Time.
来到新公司工作也有一个多月了, 陆陆续续做了一些简单的项目. 今天做一个新东西的时候发现了 Joda Time的这个东西, 因为以前用的都是JDK原生的时间处理API, 大家都知道Java原生的时间处 ...
- java8及8之前日期相关类
java 8日期相关类 Instant:精确到纳秒的时间戳 Duration:处理有关基于时间的时间量 LocalDate:只包含日期,比如:2016-10-20 LocalTime:只包含时间,比如 ...
- JAVA 8 日期工具类
JAVA 8 日期工具类 主题描述 JAVA中日期时间的历史 代码成果 主题描述 JAVA的日期时间一直比较混乱,本来以为joda会是巅峰,但是JAVA 8改变了我的思想.但是即便在JAVA 8面前, ...
- JDK8 新增的日期时间API
背景 JDK8中增加了一套全新的日期时间API,这里进行总结下,方便查询使用. 新的时间及日期API位于 java.time 包中,下面是一些关键类. Instant:代表的是时间戳. LocalDa ...
- 廖雪峰Java7处理日期和时间-3java.time的API-1LocalDateTime
1.java.time提供了新的日期和时间API: LocalDate/LocalTime/LocalDateTime ZoneDateTime/ZoneId Instant Formatter 新A ...
- java计算时间差, 日期差小结
转自:https://blog.csdn.net/sy793314598/article/details/79544796 1.java 7中的日历类Calendar Calendar类使用其静态的g ...
- Java 8 LocalDateTime 初使用
LocalTime : 只包括时间 LocalDate : 只包括日期 LocalDateTime : 包括日期和时间 JDBC映射 LocalTime 对应 time LocalDate 对应 d ...
- java8时间工具类Localdate、LocaldateTime
优点: 1.方便. Date 只能是日期加时间的格式,而 LocalDate .LocalTime.LocalDateTime 分别代表日期,时间,日期+时间,非常灵活.再就是后者在日期计算及格式化方 ...
- Java 8 新的时间日期 API
1. 概述 1.1 简介 Java 8 引入了一套全新的时间日期API,操作起来更简便.简单介绍下,LocalDate和LocalTime和LocalDateTime的使用: java.util.Da ...
随机推荐
- Scheduled SQL: SLS 大规模日志上的全局分析与调度
简介: 本文总结了大规模日志全局分析的需求,讨论SLS上现有的典型分析方案,并延伸到 SLS 原生数据处理方案,介绍 Schedueld SQL 功能与最佳实践. 大规模日志全局分析的需求 数据大规模 ...
- 浏览器扩展开发-Firefox临时载入附加组件(图)
科普:[FE] Quasar BEX 热加载区别: Chrome vs Firefox 1. 2. 3. Thats all. Refer:Firefox扩展开发 Link:https://www. ...
- dotnet 修复 GitHub Action 构建过程提示 NETSDK1127 错误
本文告诉大家,如何修复 GitHub Action 构建过程提示 error NETSDK1127: The targeting pack Microsoft.WindowsDesktop.App.W ...
- vue项目中element-ui等UI组件自定义样式不生效的解决
引 在使用element-ui的时候虽然默认的样式已经能够满足很多的需求了,但是有总是有时候要加上些自定义的需求.不过,有的时候样式写上去了,按理说应该是没错的,但却是不生效呢. 其实在vue项目中使 ...
- JavaScript数组Array方法介绍,使用示例及ES6拓展
数组定义 有次序和编号的一组值 类似数组对象 函数agruments对象,字符串,DOM元素集 实例属性 Array.prototype.length length可以赋值,用以改变数组长度 arr. ...
- vue--v-if和v-show的区别(个人项目中的理解应用)
在面试的时候,一道vue基础到不能再基础的面试题叫做v-if与v-show的区别,当然答案网上一搜一大堆,基本两句话就能说明: 1.相同点:都是根据指令是否渲染该组件 2.不同点:v-if仅重新渲染当 ...
- 生成带重复的笛卡尔乘积过程 Cartesian Product with Repetition
目录 What is Cartesian Product with Repetition Code Demo What is Cartesian Product with Repetition 比如说 ...
- 史上功能最全的Java权限认证框架!
大家好,我是 Java 陈序员.权限认证是我们日常开发绕不过的话题,这是因为我们的应用程序需要防护,防止被窜入和攻击. 在 Java 后端开发中,实现权限认证有很多种方案可以选择,一个拦截器.过滤器也 ...
- ES_CCS/R(一):建立集群之间的安全互信
为了能够实现 CCR(跨集群复制 Cross-cluster replication) 及 CCS(跨集群搜索 Cross-cluster search ),我们必须让集群之间能够互信,这样才可以建立 ...
- 【2023微博签到爬虫】用python爬上千条m端微博签到数据
一.爬取目标 大家好,我是 @马哥python说,一枚10年程序猿. 今天分享一期python爬虫案例,爬取目标是新浪微博的微博签到数据,字段包含: 页码,微博id,微博bid,微博作者,发布时间,微 ...