По сути, у меня есть NSMutableArray
, который содержит несколько NSDictionaries
. Я хочу отсортировать этот массив на основе одного из числовых значений, которое появляется в каждом из NSDictionaries
.Как я могу сортировать NSMutableArray, содержащий NSDictionary, по числовым значениям?
Например, если бы они были все NSDictionaries
:
dict_1
{
some_val, @"blah"
some_other_val, 135
}
dict_2
{
some_val, @"blah"
some_other_val, 10
}
dict_3
{
some_val, @"blah"
some_other_val, 35
}
Тогда я хочу, чтобы отсортировать их на основе стоимости "some_other_val"
. Я попытался сделать это, используя дескрипторы сортировки, однако я представляю мне неправильные результаты. Вот код, я использую для сортировки массива:
NSSortDescriptor *descriptor = [[NSSortDescriptor alloc] initWithKey:@"some_other_val" ascending:NO];
[myArray sortUsingDescriptors:[NSArray arrayWithObjects:descriptor,nil]];
Как я уже говорил, это не дает результата я ожидал увидеть. Вот результаты сортировки:
Before:
135
10
35
After:
35
135
10
Насколько я могу сказать, что это просто пытается отсортировать значения, если они являются строками. Я посмотрел в Интернете, чтобы узнать, смогу ли я найти решение проблемы, но я в тупике.
Возможно, кто-нибудь предложит вам какой-нибудь совет?
Вы можете изменить тип файла "some_other_val"? – LuisEspinoza
Я не уверен, что полностью понимаю, что вы имеете в виду, однако я могу внести изменения в NSDictionary, если это необходимо. –