Java,使用日期识别一周或一个月等的最简单方法

时间:2017-04-14 11:42:51

标签: java time

编码20分钟后,我的尝试是, 如果给定年/月/年,我有当前的年/月/年,如果 年份差异= 0,月份差异= 0,天数差异= 7,那么你离开1周。

然后我意识到,这并没有考虑日期包装。例如,如果我给的是2017年1月1日的日期,我的当前日期是06/29/2017。我的算法会返回false,但实际上距离不到一周。 (也取决于月份,即30或31天)。

因此,我的问题是,检查您是否最简单的方法是:

之日起1个月,2周或1周
  1. 鉴于日期和
  2. 我正在使用LocalDateTime.now()
  3. 给出的时间

2 个答案:

答案 0 :(得分:1)

这是一个7天的例子

LocalDate old = LocalDate.of(2017, 6, 29);
LocalDate current = LocalDate.of(2017, 7, 1);

System.out.println(old.plusDays(7).isBefore(current));

old = LocalDate.of(2017, 6, 23);
System.out.println(old.plusDays(7).isBefore(current));

输出

false
true

答案 1 :(得分:1)

您可以使用999 * 993 = 992007 OK. 999 * 996 = 995004 OK. 999 * 999 = 998001 OK. 0 error(s). $ 来衡量两个日期之间的天/月/年/周

ChronoUnit