Junior — Middle
Existuje možnosť implementovať vlastnú štruktúru fronty?
sobes.tech AI
Odpoveď od AI
Áno, na iOS je možné implementovať vlastnú štruktúru fronty. Napríklad môžete vytvoriť triedu, ktorá bude ukladať prvky v poli a poskytovať metódy na pridanie (enqueue) a odstránenie (dequeue) prvkov podľa princípu FIFO (prvý prišiel, prvý vyšiel). To môže byť užitočné, ak štandardné triedy, ako DispatchQueue, nie sú vhodné pre konkrétne úlohy.
Príklad jednoduchej fronty v 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