码迷,mamicode.com
首页 > 编程语言 > 详细

工具类 - java8 获取两个日期间的所有日期

时间:2019-12-31 18:33:27      阅读:328      评论:0      收藏:0      [点我收藏+]

标签:tostring   parse   日期格式   between   catch   add   end   工具类   foreach   

public static List<String> getBetweenDate(String start, String end) {
List<String> list = new ArrayList<>();
LocalDate startDate = null;
LocalDate endDate = null;
try {
startDate = LocalDate.parse(start);
endDate = LocalDate.parse(end);
} catch (Exception e) {
throw new ServiceException("日期格式不正确。(日期示例:2019-12-26)");
}

if (ObjectUtils.equals(start, end)) {
list.add(start);
return list;
}

long distance = ChronoUnit.DAYS.between(startDate, endDate);
if (distance < 1) {
return list;
}
Stream.iterate(startDate, d -> {
return d.plusDays(1);
}).limit(distance + 1).forEach(f -> {
list.add(f.toString());
});
return list;
}

注:传参(2019-12-31,2019-12-31) 返回 ["2019-12-31"]

工具类 - java8 获取两个日期间的所有日期

标签:tostring   parse   日期格式   between   catch   add   end   工具类   foreach   

原文地址:https://www.cnblogs.com/light-train-union/p/12125705.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!