Junior
Existují ve Swiftu funkce první třídy?
sobes.tech AI
Odpověď od AI
Ano, ve Swiftu jsou funkce funkcemi první třídy.
To znamená, že funkce mohou:
- Přiřazovat se proměnným a konstantám.
- Převádět se jako argumenty do jiných funkcí.
- Vracet se z jiných funkcí.
Příklad přiřazení funkce k proměnné:
func greet(name: String) -> String {
return "Ahoj, \(name)!"
}
let greetingFunction = greet
print(greetingFunction("Svět")) // Výstup: Ahoj, Svět!
Příklad předání funkce jako argumentu:
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) // Výstup: 10
Příklad vrácení funkce z jiné funkce:
func makeMultiplier(factor: Int) -> (Int) -> Int {
func multiplier(number: Int) -> Int {
return number * factor
}
return multiplier
}
let multiplyByThree = makeMultiplier(factor: 3)
print(multiplyByThree(4)) // Výstup: 12