Funções em Kotlin são blocos de código que podem ser chamados com um nome específico. Elas podem ter parâmetros, um tipo de retorno e podem ser aninhadas dentro de classes ou outras funções. Este cheatsheet abordará alguns aspectos fundamentais das funções em Kotlin.
fun nomeDaFuncao(parametro1: Tipo, parametro2: Tipo): TipoDeRetorno {
// Corpo da função
// Código a ser executado
return valorDeRetorno
}
Se uma função não retorna nenhum valor explicitamente, seu tipo de retorno é Unit
. A palavra-chave Unit
pode ser omitida ao declarar a função.
fun cumprimentar(nome: String) {
println("Olá, $nome!")
}
fun imprimirMensagem(): Unit {
println("Esta função não retorna nenhum valor.")
}
Funções de alta ordem são aquelas que recebem outras funções como parâmetros ou retornam funções. Elas são uma parte fundamental da programação funcional em Kotlin.
fun main(args: Array<String>) {
val result = calculate(4, 5, ::sum)
println( result )
}
fun sum(a: Int, b: Int) = a + b
fun calculate(a: Int, b: Int, operation:(Int, Int) -> Int): Int {
return operation(a, b)
}
As expressões lambda são blocos de código concisos que podem ser usados em lugares onde funções são esperadas. Elas são especialmente úteis ao trabalhar com funções de alta ordem.
val somar: (Int, Int) -> Int = { a, b -> a + b }
val resultado = somar(3, 4) // Resultado é 7
val dobrar: (Int) -> Int = { it * 2 }
val resultadoDobro = dobrar(5) // Resultado é 10
fun main(args: Array<String>) {
val result = calculate(4, 5, (a, b) -> a + b)
println( result )
}
fun calculate(a: Int, b: Int, operation:(Int, Int) -> Int): Int {
return operation(a, b)
}