Ответ
В Swift основными нативными типами коллекций являются:
-
Array (
[Element]) — упорядоченная коллекция элементов одного типа.var numbers: [Int] = [1, 2, 3] numbers.append(4) // [1, 2, 3, 4] let doubled = numbers.map { $0 * 2 } // [2, 4, 6, 8] -
Set (
Set<Element>) — неупорядоченная коллекция уникальных элементов одного типа. Реализован на основе хэш-таблицы.var uniqueTags: Set<String> = ["iOS", "Swift", "Xcode"] uniqueTags.insert("UIKit") // Может добавиться в любом месте if uniqueTags.contains("Swift") { /* true */ } -
Dictionary (
[Key: Value]) — неупорядоченная коллекция пар «ключ-значение», где ключи уникальны.var userScores: [String: Int] = ["Alice": 120, "Bob": 95] userScores["Charlie"] = 150 // Добавление let aliceScore = userScores["Alice"] // 120 (опциональный Int?)
Ключевые аспекты работы:
- Value vs Reference Types: Все стандартные коллекции Swift — value types (копируются при присваивании).
- Мутабельность: Определяется ключевым словом
var(изменяемая) илиlet(неизменяемая). - Итерация: Через цикл
for-inили методыforEach. - Методы высшего порядка: Активно использовал
map,filter,reduce,compactMapдля трансформации данных. - Фонд Objective-C: При необходимости работал с
NSArray,NSSet,NSDictionaryдля совместимости с Objective-C API.