Описание тега nsindexset

Класс NSIndexSet представляет собой неизменяемую коллекцию уникальных целых чисел без знака, известных как индексы из-за способа их использования. Эта коллекция называется индексным набором. Вы используете наборы индексов в своем коде для хранения индексов в какой-либо другой структуре данных. Например, учитывая объект NSArray, вы можете использовать набор индексов для идентификации подмножества объектов в этом массиве.

NSIndexSet - это класс коллекции Foundation Framework, похожий на NSRange, за исключением того, что он может поддерживать несмежные серии. NSIndexSet может быть создан из диапазона с помощью конструктора класса indexSetWithIndexesInRange::

NSIndexSet выражает набор уникальных целых чисел; его цель - выразить номера элементов упорядоченной коллекции, такой как NSArray. Он доступен в iOS 2.0 и новее, доступен в OS X v10.3 и новее. NSIndexSet неизменен; его изменяемый подкласс - NSMutableIndexSet. Вы можете сформировать простой NSIndexSet, состоящий только из одного непрерывного диапазона, напрямую, передав NSRange в indexSetWithIndexesInRange: но для формирования более сложного набора индексов вам нужно будет использовать NSMutableIndexSet, чтобы вы могли добавлять дополнительные диапазоны.

Пример:

    NSRange range = NSMakeRange(0, 10);
    NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:range];

Связанный источник: