Sobes.tech
Junior — Middle

Quais são as vantagens de usar o método reduce em comparação com um ciclo normal ao processar dados?

sobes.tech IA

Resposta da IA

O método reduce em Java permite processar coleções de dados de forma concisa e funcional, reduzindo-as a um único resultado. As suas vantagens em comparação com um ciclo tradicional:

  • Legibilidade e expressividade: reduce mostra claramente que os elementos estão a ser fundidos em um único valor, o que facilita a compreensão do código.
  • Imutabilidade: ao usar reduce, muitas vezes evita-se modificar variáveis externas, o que reduz a probabilidade de erros.
  • Suporte ao paralelismo: na API Stream, reduce pode ser usado em fluxos paralelos, algo difícil de implementar com um ciclo comum.

Exemplo de cálculo da soma de números usando reduce:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream()
                 .reduce(0, (subtotal, element) -> subtotal + element);
System.out.println(sum); // 15