Вы можете указать сортировку при извлечении данных с NSFetchRequest
, установив для свойства sortDescriptors
массив NSSortDescriptor
с. Но если у вас уже есть NSSet
и вы не хотите делать еще один запрос на выборку, вы можете использовать:
[[theSet allObjects] sortedArrayUsingDescriptors:sortDescriptors];
Он создаст промежуточный NSArray
при вызове allObjects
и последующем другом отсортированном массиве, поэтому он не эффективен на 100%, но издержки должны быть незначительными для наборов данных разумного размера (и, конечно, меньше стоимость сортировки).
Редактировать
На самом деле, я был неправ - NSSet также имеет метод sortedArrayUsingDescriptors:
. Так что вы можете просто позвонить [theSet sortedArrayUsingDescriptors:descriptors]
и сделать все это за один раз.