Sobes.tech
Junior — Middle

Como são implementadas e utilizadas as funções de extensão em Kotlin?

sobes.tech IA

Resposta da IA

No Kotlin, as funções de extensão permitem adicionar novas funções a classes existentes sem a necessidade de herança ou modificação do código fonte da classe. Elas são declaradas fora da classe usando a sintaxe fun ReceiverType.nomeDaFuncao(). Dentro da função de extensão, this refere-se ao objeto receptor.

Exemplo:

fun String.lastChar(): Char = this[this.length - 1]

val c = "Kotlin".lastChar()  // 'n'

As funções de extensão são úteis para adicionar utilitários e melhorar a legibilidade do código, especialmente ao trabalhar com classes de bibliotecas. Elas são chamadas como métodos normais do objeto, mas na verdade são funções estáticas com o primeiro parâmetro sendo o objeto receptor.