Agrupar ArrayList<object> java

Java

31/01/2018

Pessoal,
estou migrando do .net para o java e me peguei com uma situação "como Agrupar uma lista de objetos???
Exemplo:
private List<Pessoa> pessoas = new ArrayList<Pessoa>();
Suponhado que eu tenha nesta lista o seguinte:
pessoa1;
pessoa2;
pessoa3;
pessoa1;
pessoa1;
Lembrando que isto não tem nada a ver com banco de dados. eu gostaria de agrupar esta lista contando quantos elemento tem de cada um nesse caso o resultado seria:
pessoa1 - 3
pessoa2 - 1
pessoa3 - 1
LÁ no .net com o Linq é mamão com açucar hehehehehe, mas to levando uma Surra do java HELP-ME PLEASE
Allan Gaspar

Allan Gaspar

Curtidas 0

Melhor post

Diego Medeiros

Diego Medeiros

18/05/2018

Fala Allan!

No Java usamos :
pessoas.add(pessoa1);

para adicionar uma pessoa.
vc pode usar
pessoas = Arrays.asList(pessoa1, pessoa2, pessoa3, pessoa1, pessoa1);

se tiver usando Java 8 ou
 List.of(pessoa1, pessoa2, pessoa3, pessoa1, pessoa1);
se tiver usando Java 9.

para ver quantos elementos tem, pode fazer
pessoas.filter(e -> e.equals(pessoa1)).count();


dessa forma estamos filtrando e mantendo apenas objetos iguais a
pessoa1
e retornando a quantidade com
count()

lembrando que para funcionar, o objeto precisa ser o mesmo.

Da uma olhada nesse link, https://www.devmedia.com.br/conheca-a-api-java-collections/31995
é muito bom.
Abraaço.
GOSTEI 1

Mais Respostas

Julio Cesar

Julio Cesar

31/01/2018

Allan, tudo bem?

Nao consegui entender muito bem a sua duvida =/, já conseguiu solucionar o problema que estava encontrando ?
GOSTEI 0
POSTAR