Ich habe 2 Streams. Einer beinhaltet eine Liste mit LocalDate, der andere eine Liste mit LocalTime.
Jetzt sollten diese Streams so kombiniert werden, dass ich nachher eine grössere Liste habe, mit allen Date-Time Kombinationen.
So habe ich es jetzt (noch ungetestet). EIgentlch hätte ich diese Kombination gerne mit Stream gelöst und nicht mit for().
Jetzt sollten diese Streams so kombiniert werden, dass ich nachher eine grössere Liste habe, mit allen Date-Time Kombinationen.
So habe ich es jetzt (noch ungetestet). EIgentlch hätte ich diese Kombination gerne mit Stream gelöst und nicht mit for().
Java:
//Stream mit den letzten 8 Tagen erstellen (inkl. Heute)
Stream<LocalDate> dateLs = IntStream
.range(0, 8)
.mapToObj(i -> Integer.valueOf(i))
.map(d -> LocalDate.now().minusDays(d));
//Stream der Uhrzeiten auslesen
Stream<LocalTime> ts = to.getStartAtTs().stream();
//Neue Liste für die Datum-Zeit Kombinationen
List<LocalDateTime> dts = new ArrayList<LocalDateTime>();
//Alle Tage durchgehen
for(LocalDate d: dateLs.collect(Collectors.toList())) {
//Alle Uhrzeiten mit dem Tag kombinieren und in die Liste eintragen
dts.addAll(
ts.map(t -> t.atDate(d))
.collect(Collectors.toList())
);
}