Я снова застрял в другой проблеме, но спустя долгое время.
На этот раз у меня есть база данных (Core Data) с атрибутом numbers
, который содержит целые числа, такие как 213879,123,4,345,56567 и так далее.
Мне нужно получить данные в порядке возрастания номеров, аналогичном порядку alphabetically
.
Я делаю это способом, указанным ниже,
fetchRequest.sortDescriptors=[NSArray arrayWithObject:
[NSSortDescriptor sortDescriptorWithKey:@"numbers"
ascending:YES
selector:@selector(compare:)]];
но, к сожалению, он сравнивает только 1-ю цифру каждого числа, что означает, что если есть 2 числа, например 123
и 321
, он будет сравнивать 1 (first digit of first number)
с 3 (first digit of second number)
и сортировать их.
Запуталось, когда пришли 123
и 111
(одинаковые первые цифры всех чисел).
Если я что-то делаю не так или SortDescriptor работает таким образом? Мне нужно решение для сортировки чисел по возрастанию 123,133,213,451,516
аналогичным образом.
Что нужно запомнить Фактически атрибут numbers
будет содержать целые числа с цифрами больше 6, например 1234567,234568,235481
Спасибо всем, кто мне очень помогает в ожидании.