W tej lekcji omawiamy operacje agregujące Stream API: jak zliczać elementy przez
count(), sumy i średnie z prymitywnymi strumieniami (
IntStream,
LongStream,
DoubleStream) i metodami
sum(),
average(), a także jak znajdować ekstrema przez
min()/
max(). Osobno omówimy pracę z kontenerami
Optional,
OptionalInt,
OptionalLong,
OptionalDouble oraz właściwe sposoby wydobywania wartości:
orElse(...),
ifPresent(...),
orElseThrow(). Nauczymy się używać kolektorów
Collectors.summingInt,
Collectors.averagingInt,
Collectors.maxBy/
minBy i łączyć je z
groupingBy. Na końcu — omówienie typowych błędów i niuansów.