Junior — Middle
Lehetőség van saját sorstruktúra megvalósítására?
sobes.tech MI
Válasz az MI-től
Igen, az iOS-en saját sorstruktúrát lehet megvalósítani. Például létrehozhat egy osztályt, amely elemeket tárol egy tömbben, és metódusokat biztosít az elemek hozzáadására (enqueue) és eltávolítására (dequeue) a FIFO (elsőként érkezett, elsőként kiszállított) elv szerint. Ez hasznos lehet, ha a standard osztályok, mint például a DispatchQueue, nem alkalmasak bizonyos feladatokra.
Egyszerű sor példája Swift-ben:
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