0% acharam este documento útil (0 voto)
6 visualizações18 páginas

Java

Explicação sobre o java

Enviado por

daiane.koslowski
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
6 visualizações18 páginas

Java

Explicação sobre o java

Enviado por

daiane.koslowski
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 18

Explorando forEach, Stream,

Lambdas e Referências de Métodos


( ::) em Java

Bora lá
Primeiro de tudo!

Vamos mergulhar no mundo do Java e aprender sobre


alguns conceitos importantes que ajudam a escrever
código de forma mais elegante e eficiente. Vamos
entender o que são interfaces de coleções, forEach,
Stream, Lambdas e referências de métodos (::) em
Java, explicando cada um em uma ordem que faça
sentido.
Interfaces de Coleções
Primeiro, precisamos falar sobre as interfaces
de coleções . Em Java, uma coleção é um
objeto que agrupa múltiplos elementos em uma
única unidade. As interfaces de coleções, como
`L List, Set, e Map, fornecem formas de
trabalhar com esses grupos de elementos.
Exemplo:
List: Uma coleção ordenada que pode conter elementos
duplicados. Exemplo: lista de nomes.
Set: Uma coleção que não pode conter elementos
duplicados. Exemplo: conjunto de números únicos.
Map: Uma coleção de pares chave-valor. Exemplo: agenda de
contatos onde cada nome tem um número de telefone
associado.
Mais exemplo:
Exemplo de uma List:

Java:

List<String> nomes = [Link]("Alice", "Bob", "Charlie");


Lambdas
Antes de falar sobre forEach e Stream,
precisamos entender Lambdas . Lambdas são
funções anônimas que podem ser usadas para
implementar métodos de interfaces funcionais de
forma concisa. Pense nelas como atalhos para
escrever pequenas funçõe
Exemplo de Lambda:
// Lambda que recebe um número e imprime ele

Consumer<Integer> imprimeNumero = numero -> [Link](numero);


O que é forEach?
O método forEach permite executar uma
ação para cada elemento de uma coleção.
Pense nele como uma maneira de dizer à
coleção: "Para cada item, faça isso".
Geralmente, usamos forEach com lambdas.
Exemplo de forEach com Lambda:

List<Integer> numeros = [Link](1, 2, 3, 4, 5);


[Link](numero -> [Link](numero));

Aqui, [Link](numero ->


[Link](numero)) está dizendo: "Para cada
número na lista, imprima-o".
O que é Stream?
Um Stream é como uma linha de montagem de
fábrica para seus dados. Ele permite processar uma
sequência de elementos de forma declarativa, ou seja,
dizendo o que fazer em vez de como fazer. Stream
trabalha muito bem com lambdas para realizar
operações como filtragem, mapeamento e redução.
Exemplo básico de Stream com Lambda:
List<Integer> numeros = [Link](1, 2, 3, 4, 5);
[Link]()
.filter(n -> n % 2 == 0)
.forEach(n -> [Link](n));
Neste exemplo:
Neste exemplo:
1. [Link]() cria um fluxo de números.
2. filter(n -> n % 2 == 0) filtra apenas os
números pares.
3. forEach(n -> [Link](n)) imprime
cada número par.
O que são Referências de Métodos ( ::)?
Referências de métodos são uma forma curta e
elegante de referenciar um método. Em vez de
usar uma função lambda, podemos
diretamente referenciar o método que
queremos usar. Isso torna o código mais limpo
e legível.
Exemplo de Referência de Método:
List<String> nomes = [Link]("Alice", "Bob", "Charlie");
[Link]([Link]::println);

Em vez de [Link](nome -> [Link](nome)),


usamos [Link]::println, que faz a mesma coisa de uma forma mais concisa.
Juntando Tudo
Vamos combinar forEach,
Stream, lambdas e referências de
métodos em um exemplo completo.
Exemplo Completo:
.
Neste exemplo:
[Link]() cria um fluxo de nomes.
filter(nome -> [Link]("A"))
filtra os nomes que começam com "A".
forEach([Link]::println) imprime cada
nome filtrado.
Resumindo
Interfaces de Coleções : Estruturas como List, Set e Map que ajudam a
organizar e manipular grupos de dados.
Lambdas : Funções anônimas que permitem escrever métodos de forma concisa.
forEach: Executa uma ação para cada item de uma coleção.
Stream: Uma maneira poderosa de manipular coleções de dados de forma
declarativa.
Referências de Métodos ( ::) : Uma forma elegante de usar métodos existentes,
tornando o código mais limpo e legível.

Você também pode gostar