37 lines
2.2 KiB
Markdown
37 lines
2.2 KiB
Markdown
---
|
|
title: Lambda Expressions
|
|
localeTitle: Expressões Lambda
|
|
---
|
|
## Expressões Lambda
|
|
|
|
Este é um esboço. [Ajude nossa comunidade a expandi-lo](https://github.com/freecodecamp/guides/tree/master/src/pages/mathematics/quadratic-equations/index.md) .
|
|
|
|
[Este guia de estilo rápido ajudará a garantir que sua solicitação de recebimento seja aceita](https://github.com/freecodecamp/guides/blob/master/README.md) .
|
|
|
|
O Stream Api é usado em java para permitir o encadeamento de operações sequenciais e agregadas. As operações de fluxo são de natureza intermediária ou terminal.
|
|
|
|
Neste pequeno exemplo você pode ver que um dos utilitários de um fluxo é receber uma certa propriedade de todos os objetos em uma lista e retorná-la em outra lista usando operações intermediárias e de terminal.
|
|
|
|
Suponha que você tenha uma classe de objeto de Student. \`\` java estudante de classe pública { int studentId; String studentName;
|
|
|
|
public String getStudentName () { return this.studentName; }
|
|
|
|
public int getStudentId () { return this.studentId; } // setters } \`\`
|
|
|
|
Agora, suponha que em algum método você tenha uma lista de todos os alunos e queira obter uma lista de todos os nomes dos alunos. Tradicionalmente, isso pode ser algo assim.
|
|
|
|
\`\` java Lista students = some list of student objects
|
|
|
|
Lista studentNames = new ArrayList <> (); para (aluno estudante: alunos) { studentNames.add (student.getStudentName ()); } \`\` Embora isso não seja terrível, pode ser simplificado. Usando fluxos isso é possível com uma linha de código.
|
|
|
|
\`\` java Lista students = some list of student objects
|
|
|
|
Lista studentNames = students.stream (). map (String :: getStudentName) .collect (Collectors.toList ()); \`\`
|
|
|
|
A API de fluxo de alunos examina a lista de alunos e usa a função de mapa intermediário para retornar uma nova lista de fluxos usando o método que estiver à direita do:
|
|
|
|
A operação de coleta do terminal coleta o fluxo como uma lista de cadeias.
|
|
|
|
Este é apenas um uso da API do Streams usada no java 8. Existem muitos outros aplicativos de fluxos que utilizam as outras operações, como visto aqui na documentação. [Fluxos api doc](https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html)
|
|
|
|
#### Mais Informações: |