Java 8 LocalDateTime heute in bestimmten Stunden
Gibt es eine schönere/einfachere Möglichkeit für den Bau LocalDateTime
- Objekt, heute um 6 UHR als diese?
LocalDateTime todayAt6 = LocalDateTime.now().withHour(6).withMinute(0).withSecond(0).withNano(0);
Irgendwie weiß ich nicht, wie den Umgang mit Minuten/Sekunden/nano als alle, die ich sagen will, ist now().withHours()
.
Du musst angemeldet sein, um einen Kommentar abzugeben.
LocalDate
hat verschiedene überlastetatTime
Methoden, wie diese eine, die zwei Argumente nimmt (Stunde, Tag und minute):Andere alternative (speziell wenn Sie möchten, ändern Sie eine bereits vorhandene
LocalDateTime
) ist die Verwendung derwith()
Methode.Nimmt er einen
TemporalAdjuster
als parameter. Und nach javadoc, vorbei an einemLocalTime
dieser Methode macht genau das, was Sie brauchen:So, der code wird:
Die akzeptierte Antwort ist ein guter. Sie können auch Ihre eigenen erstellen Uhr um dies zu tun:
Kann dies eine nützliche option, wenn wiederholt verwendet, weil die Uhr gespeichert werden können in einer statischen Variablen:
Alternative zu
LocalDate.now().atTime(6, 0)
ist:Funktioniert