Streams no Java 8
Considerando uma lista de Clientes List<Cliente> clientes
podemos usar Streams
para executar várias tarefas que antes precisavam de muito código e que poderiam ser escritas de maneiras distintas. Com Streams
essas tarefas ficam mais simples, estruturadas e padronizadas. Vamos conhecer algumas funcionalidades desta API.
count - Retorna a quantidade de elementos presentes em uma stream. Mas se você tem uma lista prefira clientes.size()
.
clientes.stream().count();
limit - Retorna uma nova stream que contém apenas os N primeiros elementos da stream original.
clientes.stream().limit(10);
skip - Retorna uma nova stream que não contém os N primeiros elementos da stream original.
clientes.stream().skip(10);
sorted - Retorna uma nova stream contendo os elementos da stream original ordenados pela forma natural em ordem crescente.
clientes.stream().sorted();
sorted.reversed - Retorna uma nova stream contendo os elementos da stream original ordenados de acordo com algum critério em ordem decrescente.
clientes.stream().sorted(comparing(Cliente::getId).reversed());