Junior — Middle
Da li postoji mogućnost implementacije sopstvene strukture reda?
sobes.tech АИ
Одговор од АИ
Da, u iOS možete implementirati sopstvenu strukturu reda. Na primer, možete kreirati klasu koja će čuvati elemente u nizu i pružati metode za dodavanje (enqueue) i uklanjanje (dequeue) elemenata prema principu FIFO (prvi ušao, prvi izašao). Ovo može biti korisno ako standardne klase, poput DispatchQueue, nisu pogodne za određene zadatke.
Primer jednostavne reda u Swift-u:
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