java比较两个日期时间,比较两个日期大小

java比较两个日期时间,比较两个日期大小

我们经常会遇到一个问题,需要比较两个时间的大小,或者需要判断一个时间在另一个时间之前,或者一个时间在另一个时间之后,比较日期时间的大小,还要精确到秒,这个时候经常会有一些人卡住。这个时候我们来讲解一下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


上班时间摸鱼写的所以只写了一点 下篇再出个更详细的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值