Sobes.tech
Junior

Czy w języku programowania Swift istnieją funkcje pierwszej klasy?

sobes.tech AI

Odpowiedź od AI

Tak, w Swift funkcje są funkcjami pierwszej klasy.

Oznacza to, że funkcje mogą:

  • Przypisywać się do zmiennych i stałych.
  • Przekazywać jako argumenty do innych funkcji.
  • Zwracać się z innych funkcji.

Przykład przypisania funkcji do zmiennej:

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

let greetingFunction = greet

print(greetingFunction("Świecie")) // Wypisze: Cześć, Świecie!

Przykład przekazywania funkcji 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) // Wypisze: 10

Przykład zwracania funkcji z innej funkcji:

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

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