一、前言
我们在开发过程中,必不可少的就是对字符串日期的操作,特别是求相差天数。搜了一下大部分都是使用Calendar来进行计算的,今天我们来介绍两种比较好的方法。
- hutool
- jkd8新特性LocalDateTime
二、Hutool实现
1. 导入maven
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.18</version>
</dependency>
2. 实现方法
public static long compareTime(String dateStr1,String dateStr2){
Date date1 = DateUtil.parse(dateStr1);
Date date2 = DateUtil.parse(dateStr2);
return DateUtil.between(date1, date2, DateUnit.DAY);
}
3. 测试
public static void main(String[] args) {
String dateStr1 = "2021-01-01";
String dateStr2 = "2021-01-05";
long compareTime = compareTime(dateStr1, dateStr2);//4
}
三、jkd8新特性LocalDateTime实现
1. API了解
对于LocalDate,只有精度大于或等于日的加减,如年、月、日;
对于LocalTime,只有精度小于或等于时的加减,如时、分、秒、纳秒;
对于LocalDateTime,则可以进行任意精度的时间相加减;
2. 测试
String dateStr1 = "2021-01-01";
String dateStr2 = "2021-01-05";
LocalDate parse = LocalDate.parse(dateStr1);
LocalDate parse1 = LocalDate.parse(dateStr2);
long between = ChronoUnit.DAYS.between(parse, parse1);//4
四、总结
这样我们使用两种比较简单的方式实现了计算两个字符串日期的相差天数,觉得有用收藏,下次方便查看哦!!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/85229.html