从日历到 ChronoLocalDateTime
from Calendar to ChronoLocalDateTime
我想知道 LocalDateTime
是否在昨天之后,所以我做了这个比较,但我不知道如何从日历传递到 ChronoLocalDateTime
final Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -1);
lastClientEvent.getDateReceived().isAfter(cal);
我不确定你所说的昨天到底是什么意思,如果你指的是昨天,则可以使用今天午夜之前的任何日期:
LocalDateTime yesterday = LocalDateTime.of(
LocalDate.now(ZoneId.of("Europe/Madrid")),
LocalTime.MIDNIGHT
);
=> 2018-06-16T00:00
如果你的意思是昨天午夜你可以使用minusDays(1)
:
LocalDateTime yesterday = LocalDateTime.of(
LocalDate.now(ZoneId.of("Europe/Madrid")),
LocalTime.MIDNIGHT
).minusDays(1);
=> 2018-06-15T00:00
然后你可以将你的日期与此进行比较:
LocalDateTime anyDate = LocalDateTime.of(2018, Month.JUNE, 16, 9, 27, 50);
if (anyDate.isAfter(yesterday)) { }
您可以使用 的另一个解决方案:
LocalDateTime anyDate = LocalDateTime.of(2018, Month.JUNE, 16, 9, 27, 50);
LocalDate zoneDate = LocalDate.now(ZoneId.of("Europe/Madrid"));
if (anyDate.toLocalDate().isAfter(zoneDate)) { }
你可以这样转换:
final Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -1);
Date ts = cal.getTime();
Instant instant = Instant.ofEpochMilli(ts.getTime());
LocalDateTime yesterday = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
if(lastClientEvent.getDateReceived().isAfter(yesterday){..}
我想知道 LocalDateTime
是否在昨天之后,所以我做了这个比较,但我不知道如何从日历传递到 ChronoLocalDateTime
final Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -1);
lastClientEvent.getDateReceived().isAfter(cal);
我不确定你所说的昨天到底是什么意思,如果你指的是昨天,则可以使用今天午夜之前的任何日期:
LocalDateTime yesterday = LocalDateTime.of(
LocalDate.now(ZoneId.of("Europe/Madrid")),
LocalTime.MIDNIGHT
);
=> 2018-06-16T00:00
如果你的意思是昨天午夜你可以使用minusDays(1)
:
LocalDateTime yesterday = LocalDateTime.of(
LocalDate.now(ZoneId.of("Europe/Madrid")),
LocalTime.MIDNIGHT
).minusDays(1);
=> 2018-06-15T00:00
然后你可以将你的日期与此进行比较:
LocalDateTime anyDate = LocalDateTime.of(2018, Month.JUNE, 16, 9, 27, 50);
if (anyDate.isAfter(yesterday)) { }
您可以使用
LocalDateTime anyDate = LocalDateTime.of(2018, Month.JUNE, 16, 9, 27, 50);
LocalDate zoneDate = LocalDate.now(ZoneId.of("Europe/Madrid"));
if (anyDate.toLocalDate().isAfter(zoneDate)) { }
你可以这样转换:
final Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -1);
Date ts = cal.getTime();
Instant instant = Instant.ofEpochMilli(ts.getTime());
LocalDateTime yesterday = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
if(lastClientEvent.getDateReceived().isAfter(yesterday){..}