Junior
Existem funções de primeira classe na linguagem de programação Swift?
sobes.tech IA
Resposta da IA
Sim, em Swift as funções são funções de primeira classe.
Isto significa que as funções podem:
- Atribuir-se a variáveis e constantes.
- Ser passadas como argumentos para outras funções.
- Ser retornadas por outras funções.
Exemplo de atribuição de uma função a uma variável:
func greet(name: String) -> String {
return "Olá, \(name)!"
}
let greetingFunction = greet
print(greetingFunction("Mundo")) // Saída: Olá, Mundo!
Exemplo de passar uma função como argumento:
func applyOperation(value: Int, operation: (Int) -> Int) -> Int {
return operation(value)
}
func double(number: Int) -> Int {
return number * 2
}
let result = applyOperation(value: 5, operation: double)
print(result) // Saída: 10
Exemplo de devolver uma função de outra função:
func makeMultiplier(factor: Int) -> (Int) -> Int {
func multiplier(number: Int) -> Int {
return number * factor
}
return multiplier
}
let multiplyByThree = makeMultiplier(factor: 3)
print(multiplyByThree(4)) // Saída: 12