Nesta aula analisamos as operações agregadoras do Stream API: como contar quantidade com
count(), somas e médias com streams primitivos (
IntStream,
LongStream,
DoubleStream) e métodos
sum(),
average(), além de encontrar extremos com
min()/
max(). Vamos discutir separadamente o trabalho com os contêineres
Optional,
OptionalInt,
OptionalLong,
OptionalDouble e as maneiras corretas de extrair valores:
orElse(...),
ifPresent(...),
orElseThrow(). Aprenderemos a usar os coletores
Collectors.summingInt,
Collectors.averagingInt,
Collectors.maxBy/
minBy e combiná-los com
groupingBy. No fim — análise de erros e nuances típicos.