Nachfolgend habe ich die (meiner Meinung nach) wichtigsten Java 8 lambdas und Date Befehle zusammen gefasst. Dabei handelt es sich um alltägliche Dinge, die man auswendig können sollte. Beim Umstieg von Java 7 auf Java 8 gehört diese Liste also ausgedruckt und an den Monitor gepinnt.
Java 8 - Finde erstes Object einer Collection:
final Eo result = entityBeans.stream() .filter(eo -> id.equals(eo.getId())) .findFirst().orElse(null);
Java 8 - Filtern eines sortierten Sets und mapping anhand toString:
final SetfilteredSet = someSortedSet.readAll().stream() .filter(Eo::isNeeded) .map(KpiInformation::toString) .collect(Collectors.toCollection(LinkedHashSet::new));
Java 8 - Datum:
LocalDateTime (Datum + Zeit ohne Zeitzone)
LocalDateTime.now(ZoneOffset.UTC)
ZonedDateTime (Datum + Zeit mit Zeitzone)
ZonedDateTime.now(ZoneOffset.UTC)
LocalDate (Datum ohne Zeitzone)
LocalDate.now(Clock.systemUTC())
LocalTime (Zeit ohne Zeitzone)
LocalTime.now(Clock.systemUTC())
Periods / durations:
final Period twoDays = Period.ofDays(2); final Duration fortyEightHours = Duration.ofDays(2);
Conversion (new Date objects into old Java-Date):
final Date date = Date.from(ZonedDateTime.now(ZoneOffset.UTC).toInstant());