Sobes.tech
Junior — Middle

Можеш ли да изброиш и обясниш примери за функции, които приемат други функции като аргументи?

sobes.tech AI

Отговор от AI

В iOS (Swift) функциите, които приемат други функции като аргументи, често се използват за обработка на събития, асинхронни операции или настройка на поведението. Примери:

  • map — прилага функция към всеки елемент от колекцията:
let numbers = [1, 2, 3]
let squares = numbers.map { $0 * $0 } // [1, 4, 9]
  • filter — избира елементи, които отговарят на условие:
let evens = numbers.filter { $0 % 2 == 0 } // [2]
  • sorted(by:) — сортира масив по зададен критерий:
let sortedNumbers = numbers.sorted(by: { $0 > $1 }) // [3, 2, 1]
  • DispatchQueue.main.async — приема затваряне за изпълнение на код асинхронно:
DispatchQueue.main.async {
    print("Изпълнява се в главния поток")
}

Тези функции позволяват писане на по-гъвкав и четим код, като предават логиката като параметър.