Olá e bem-vindo. Nesta lição, você aprenderá sobre expressões lambda, o que são e o que fazem. Então o que é? um lambda como forma de representar uma função. Significa uma maneira expansiva de fazer algo. Então, no nosso caso, uma expressão lambda é um pequeno bloco de código, que pode processar outra função talvez, ou pode processar um determinado conjunto de parâmetros e retornar um valor. Então, quando as expressões Kotlin e lambda são semelhantes a funções, mas eles não precisam de um nome e podem ser implementados bem no corpo de outra função. Então, uma expressão lambda, ou como poderíamos dizer, simplesmente um lambda, é uma função anônima, uma função sem nome. Essas funções são passadas imediatamente como uma expressão sem a necessidade de declará-lo. Então lambdas são sobre velocidade e simplicidade, e lambdas são considerados um das ferramentas mais poderosas em Kotlin, ou qualquer outra linguagem moderna. Uma vez que permite modelar funções de forma mais simples. A única maneira de fazermos certas coisas em Java é declarando uma interface com um único método. Mas em Kotlin, lambdas podem abrir um mundo infinito de possibilidades. Ok, então como definimos uma função que aceita lambdas? Deixe-me ir para a minha atividade principal. Este é o nosso programa. Então, dentro da minha atividade principal aqui, Vou definir uma variável. Vou dizer Val, vou chamar essa variável de saudação. Só vou dizer olá para alguém. Val-saudação-igual, chaves abertas, Eu vou dizer println, Olá, bom dia. Apenas uma simples saudação. Agora, agora, esta variável, não vai fazer nada porque nada chamou ainda. Então vamos executá-lo para mostrar o que quero dizer. Vou abrir o logcat aqui, e vou abrir meu terminal, e eu vou executar este aplicativo. Gradle está construindo, o emulador está construindo, meu emulador aparece, vou movê-lo para que façamos o que estamos fazendo. Ok, o programa terminou de ser executado, e veja aqui, temos uma mensagem de erro, e depois dizendo "a expressão println não pode ser invocado como uma função." Então eu vou voltar ao meu código, e vou corrigir isso simplesmente invocando um lambda. E aqui está meu lambda, não preciso declarar uma função, Não preciso dar nenhum nome. Vou invocar a função de saudação, dizendo saudações. Portanto, uma expressão lambda é atribuída à variável saudação, sem nome. Então eu vou executá-lo novamente, e olhe para isso, nosso IDE forneceu isso para nós. Em Kotlin para invocar um lambda, precisamos ter esse operador privado chamado Any.invoke, e viu que estávamos fazendo um lambda, então o IDE nos deu. Ok, agora estamos prontos para executá-lo. Eu não preciso disso, e vou aplicar as alterações e reiniciar, construindo e funcionando, as mudanças foram bem-sucedidas, Vou executar o aplicativo, o lançamento foi bem-sucedido. Agora vou trazer meu emulador. Este é o meu aplicativo, vou clicar no botão. Agora vamos olhar para o logcat, eu vou correr e lá vamos nós. Nossa função lambda impressa. "Olá, bom dia." Assim como pedimos. Então aqui uma expressão lambda é atribuída para uma saudação variável. A saudação funciona como uma função, mas não tem um nome ou declaração de uma função, é anônimo, é um lambda. Então, estamos invocando o que é essencialmente uma função, mas chamamos isso de expressão lambda, e essa expressão lambda é invocada como saudação. Essa é a nossa lição sobre expressões lambda. Obrigado por assistir. Fique ligado na próxima aula.