Junior — Middle
Qual é a finalidade do método distinct na API Stream e como ele difere de outros métodos de filtragem?
sobes.tech IA
Resposta da IA
O método distinct() na API Stream é usado para remover duplicados de um fluxo de elementos. Ele retorna um novo fluxo, no qual cada elemento é único, com base nos métodos equals() e hashCode() dos objetos.
Diferentemente de outros métodos de filtragem, como filter(), distinct() elimina automaticamente elementos repetidos, enquanto filter() permite definir uma condição arbitrária para a seleção de elementos.
Exemplo:
List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
List<Integer> distinctNumbers = numbers.stream()
.distinct()
.collect(Collectors.toList());
// distinctNumbers conterá [1, 2, 3, 4, 5]