Senior
O que são métodos intermédios e terminais em streams?
sobes.tech IA
Resposta da IA
Na API de Streams do Java, os métodos dividem-se em intermédios e terminais.
-
Métodos intermédios devolvem um novo stream e permitem construir uma cadeia de operações. São preguiçosos, ou seja, não são executados imediatamente, apenas quando um método terminal é chamado. Exemplos:
filter(),map(),sorted(),distinct(). -
Métodos terminais iniciam o processamento do stream e retornam um resultado (não um stream). Após a sua chamada, a cadeia termina. Exemplos:
collect(),forEach(),reduce(),count().
Exemplo:
List<String> names = List.of("Anna", "Bob", "Charlie", "David");
long count = names.stream() // método intermédio stream()
.filter(name -> name.length() > 3) // método intermédio filter()
.count(); // método terminal count()
System.out.println(count); // Imprime o número de nomes com mais de 3 caracteres