Lendo a documentação do Stream, ainda não consegui compreender o que a stream().collect consegue fazer, e quais parâmetros deve receber. Poderiam me ajudar a compreender isso?
Lendo a documentação do Stream, ainda não consegui compreender o que a stream().collect consegue fazer, e quais parâmetros deve receber. Poderiam me ajudar a compreender isso?
Boa noite, Luis! Como vai?
A versão mais simples do collect()
é a que apenas recebe um objeto do tipo Collector
. Esse coletor nada mais vai fazer do que definir a forma como juntar os dados da Stream
num objeto mutável, como uma lista, por exemplo!
Exemplo prático:
Suponha que vc tenha uma Stream
de String
chamada stringStream
. Para transformar essa Stream<String>
para uma List<String>
, vc poderia fazer:
List<String> asList = stringStream.collect(Collectors.toList());
Onde Collectors
é uma classe que já possui várias estratégias de coletores implementadas por padrão!
Pegou a ideia? Qualquer coisa é só falar!
Grande abraço e bons estudos, meu aluno!