Если вы хотите, чтобы они были в том же порядке, то вам нужно отсортировать их перед извлечением значений. Пример:
NSArray * sortedRecipes = [user.recipes sortedArrayUsingDescriptors:arrayOfSortDescriptors];
NSArray * identities = [sortedRecipes valueForKey:@"identity"];
NSArray * names = [sortedRecipes valueForKey:@"name"];
EDIT
Мои извинения. Я только что понял, что это вопрос iPhone, и NSSet
не имеет sortedArrayUsingDescriptors:
на iPhone. Однако обойти это тривиально:
NSArray * recipes = [user.recipes allObjects];
NSArray * sortedRecipes = [recipes sortedArrayUsingDescriptors:arrayOfSortDescriptors];
....