Sobes.tech
Junior

Existe-t-il des fonctions de première classe dans le langage de programmation Swift ?

sobes.tech IA

Réponse de l'IA

Oui, en Swift, les fonctions sont des fonctions de première classe.

Cela signifie que les fonctions peuvent :

  • Être assignées à des variables et constantes.
  • Être passées en tant qu'arguments à d'autres fonctions.
  • Être retournées par d'autres fonctions.

Exemple d'assignation d'une fonction à une variable :

func greet(name: String) -> String {
    return "Bonjour, \(name)!"
}

let greetingFunction = greet

print(greetingFunction("Monde")) // Affiche : Bonjour, Monde!

Exemple de passage d'une fonction en tant qu'argument :

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) // Affiche : 10

Exemple de retour d'une fonction depuis une autre fonction :

func makeMultiplier(factor: Int) -> (Int) -> Int {
    func multiplier(number: Int) -> Int {
        return number * factor
    }
    return multiplier
}

let multiplyByThree = makeMultiplier(factor: 3)
print(multiplyByThree(4)) // Affiche : 12