这篇文章主要介绍了java中的日期和时间比较大小,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
日期和时间比较大小
java中日期如何比较大小
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); //设置日期格式
Date begin = fmt.parse("2017-07-30"); //开始日期
Date end = fmt.parse("2017-08-30"); //结束日期
try {
Date bt=df.parse(begin );
Date et=df.parse(end );
if (bt.before(et)){
bt日期小于et日期
}
if (bt.after(et)){
bt日期大于et日期
}
} catch (ParseException e) {
e.printStackTrace();
}
java中时间如何比较大小
public static void main(String[] args) throws ParseException {
String time = "2019-6-02 11:06:51";
String time1 = "2019-6-02 11:05:51";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date d1 = format.parse(time);
Date d2 = format.parse(time1);
//前者大于后者 返回大于0的数字反之小于0的数字,等于返回0
System.out.println(d1.compareTo(d2));
}
比较两个日期时间,比较两个日期大小
我们经常会遇到一个问题,需要比较两个时间的大小,或者需要判断一个时间在另一个时间之前,或者一个时间在另一个时间之后,比较日期时间的大小,还要精确到秒,这个时候经常会有一些人卡住。
这个时候我们来讲解一下java8的新日期时间类。
LocalDateTime
可以很好的解决日期比较大小的问题,而且是线程安全的,精确到秒
不说废话直接上代码
看不懂的可以直接复制使用 只需要传2个需要比较的日期时间即可
但是必须需要jdk8版本 因为这个是java8的日期时间处理类
public boolean verifyDate(Date begin,Date end){
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime beginDate = LocalDateTime.ofInstant(begin.toInstant(), zoneId);
LocalDateTime endDate = LocalDateTime.ofInstant(end.toInstant(), zoneId);
return beginDate.isBefore(endDate);
}
比较begin的时间是否在end之前 看不懂的可以直接复制上面代码 使用 精确到秒
- begin < end 返回true
- begin > end 返回false
- begin = end 返回false
主要是使用LocalDateTime有一种比较的方法
isBefore(LocalDateTime )
:可判断当前的localdatetime时间在参数的localdatetime之后isAfter(LocalDateTime)
:可判断当前的localdatetime时间在参数的localdatetime之前
如:
isBefore()
a.isBefore(b)
- a < b 返回true
- a = b 返回false
- a > b 返回false
isAfter()
a.isAfter(b)
- a < b 返回false
- a = b 返回false
- a > b 返回true
DateTimeFormatter
DateTimeFormatter这个相当于simpledateformatter的日期安全类
他提供了更强大的api
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程学习网。
沃梦达教程
本文标题为:java中的日期和时间比较大小
猜你喜欢
- Java实现顺序表的操作详解 2023-05-19
- Springboot整合minio实现文件服务的教程详解 2022-12-03
- Spring Security权限想要细化到按钮实现示例 2023-03-07
- JSP 制作验证码的实例详解 2023-07-30
- SpringBoot使用thymeleaf实现一个前端表格方法详解 2023-06-06
- 基于Java Agent的premain方式实现方法耗时监控问题 2023-06-17
- 深入了解Spring的事务传播机制 2023-06-02
- JSP页面间传值问题实例简析 2023-08-03
- Java中的日期时间处理及格式化处理 2023-04-18
- ExecutorService Callable Future多线程返回结果原理解析 2023-06-01