Junior — Middle
Има ли възможност да реализирате собствена структура на опашката?
sobes.tech AI
Отговор от AI
Да, в iOS можете да реализирате собствена структура на опашка. Например, можете да създадете клас, който съхранява елементи в масив и предоставя методи за добавяне (enqueue) и премахване (dequeue) на елементи по принципа FIFO (първи влязъл - първи излязъл). Това може да бъде полезно, ако стандартните класове като DispatchQueue не са подходящи за конкретни задачи.
Пример за проста опашка на Swift:
class Queue<T> {
private var elements: [T] = []
func enqueue(_ element: T) {
elements.append(element)
}
func dequeue() -> T? {
guard !elements.isEmpty else { return nil }
return elements.removeFirst()
}
var isEmpty: Bool {
return elements.isEmpty
}
}
let queue = Queue<Int>()
queue.enqueue(1)
queue.enqueue(2)
print(queue.dequeue()) // 1
print(queue.dequeue()) // 2