Junior — Middle
Ce alte tipuri de colecții, în afară de array-uri, seturi și dicționare, există în Swift?
sobes.tech AI
Răspuns de la AI
În Swift, pe lângă array-uri (Array), mulțimi (Set) și dicționare (Dictionary), există și alte tipuri de colecții pe care le poți folosi pentru stocarea și organizarea datelor:
- Range — reprezintă un interval de valori, de exemplu,
1...5. - OptionSet — structură pentru lucrul cu un set de opțiuni, implementată prin măști de biți.
- ContiguousArray — array optimizat pentru stocarea elementelor într-o zonă continuă de memorie.
- ArraySlice — o felie de array care permite lucrul cu o parte a array-ului fără a copia.
- UnsafeBufferPointer și UnsafeMutableBufferPointer — pointeri de nivel scăzut pentru lucrul cu memoria, care pot fi folosiți ca colecții.
De asemenea, poți crea propriile colecții implementând protocoale precum Collection, Sequence și altele, ceea ce permite crearea de structuri cu comportament de colecție, de exemplu, coadă (Queue), stivă (Stack) sau listă legată (LinkedList).
Exemplu de creare a unei cozi simple bazate pe array:
struct Queue<T> {
private var elements: [T] = []
mutating func enqueue(_ value: T) {
elements.append(value)
}
mutating func dequeue() -> T? {
guard !elements.isEmpty else { return nil }
return elements.removeFirst()
}
}