Ответ
Множество (Set) в Swift используется для хранения неупорядоченной коллекции уникальных элементов одного типа, соответствующего протоколу Hashable.
Основные сценарии применения:
- Гарантия уникальности элементов. Автоматическое удаление дубликатов при вставке.
let uniqueIDs: Set = [101, 102, 103, 101] // Станет [101, 102, 103] - Быстрая проверка принадлежности. Метод
contains(_:)работает в среднем за O(1).if uniqueIDs.contains(102) { // Быстрая проверка print("ID найден") } - Выполнение теоретико-множественных операций: объединение (
union), пересечение (intersection), вычитание (subtracting), симметрическая разность (symmetricDifference).let admins: Set = ["Alice", "Bob"] let activeUsers: Set = ["Bob", "Charlie"] let activeAdmins = admins.intersection(activeUsers) // ["Bob"]
Когда НЕ использовать Set:
- Когда важен порядок элементов (используйте
Array). - Когда нужны дубликаты значений.
- Когда требуется частый доступ к элементам по целочисленному индексу.
Совет: Для хранения упорядоченных уникальных элементов рассмотрите использование NSOrderedSet (Foundation) или комбинации Set для проверки уникальности и Array для сохранения порядка.